TLSX - TLS Data Gathering and Analysis
Pricing
from $0.01 / actor invocation
TLSX - TLS Data Gathering and Analysis
Apify Actor wrapper for ProjectDiscovery's tlsx, a fast and configurable TLS grabber for TLS-based data collection and analysis.
TLSX - TLS Data Gathering and Analysis
Pricing
from $0.01 / actor invocation
Apify Actor wrapper for ProjectDiscovery's tlsx, a fast and configurable TLS grabber for TLS-based data collection and analysis.
You can access the TLSX - TLS Data Gathering and Analysis programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "0.1", "x-build-id": "uqzHXAKHVt8W5hivT" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/rl1987~pd-tlsx/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-rl1987-pd-tlsx", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/rl1987~pd-tlsx/runs": { "post": { "operationId": "runs-sync-rl1987-pd-tlsx", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/rl1987~pd-tlsx/run-sync": { "post": { "operationId": "run-sync-rl1987-pd-tlsx", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "properties": { "host": { "title": "Target host(s)", "type": "array", "description": "Target host(s) to scan. Accepts IP, CIDR, ASN, DNS name, DNS name with port, or URL (-u/-host).", "items": { "type": "string" } }, "port": { "title": "Port(s)", "type": "array", "description": "Target port(s) to connect to (-p/-port). Default 443.", "items": { "type": "string" } }, "scanMode": { "title": "Scan mode", "enum": [ "auto", "ctls", "ztls", "openssl" ], "type": "string", "description": "TLS connection mode to use (-sm/-scan-mode).", "default": "auto" }, "preHandshake": { "title": "Pre-handshake (early termination)", "type": "boolean", "description": "Enable pre-handshake TLS connection using ztls (-ps/-pre-handshake).", "default": false }, "scanAllIps": { "title": "Scan all IPs", "type": "boolean", "description": "Scan all resolved IPs for a host (-sa/-scan-all-ips).", "default": false }, "ipVersion": { "title": "IP version(s)", "type": "array", "description": "IP version(s) to use (-iv/-ip-version). Values: 4, 6.", "items": { "type": "string" } }, "so": { "title": "Display Subject Organization", "type": "boolean", "description": "-so", "default": false }, "tlsVersion": { "title": "Display TLS version", "type": "boolean", "description": "-tv/-tls-version", "default": false }, "cipher": { "title": "Display cipher used", "type": "boolean", "description": "-cipher", "default": false }, "hash": { "title": "Certificate fingerprint hashes", "type": "array", "description": "-hash. Values: md5, sha1, sha256.", "items": { "type": "string" } }, "jarm": { "title": "Display JARM fingerprint", "type": "boolean", "description": "-jarm", "default": false }, "ja3": { "title": "Display JA3 fingerprint (ztls)", "type": "boolean", "description": "-ja3", "default": false }, "wildcardCert": { "title": "Display wildcard certificate hosts", "type": "boolean", "description": "-wc/-wildcard-cert", "default": false }, "probeStatus": { "title": "Display TLS probe status", "type": "boolean", "description": "-tps/-probe-status", "default": false }, "versionEnum": { "title": "Enumerate supported TLS versions", "type": "boolean", "description": "-ve/-version-enum", "default": false }, "cipherEnum": { "title": "Enumerate supported ciphers", "type": "boolean", "description": "-ce/-cipher-enum", "default": false }, "cipherType": { "title": "Cipher types to enumerate", "type": "array", "description": "-ct/-cipher-type. Values: all, secure, insecure, weak.", "items": { "type": "string" } }, "clientHello": { "title": "Include client hello in JSON output (ztls)", "type": "boolean", "description": "-ch/-client-hello", "default": false }, "serverHello": { "title": "Include server hello in JSON output (ztls)", "type": "boolean", "description": "-sh/-server-hello", "default": false }, "serial": { "title": "Display certificate serial number", "type": "boolean", "description": "-se/-serial", "default": false }, "expired": { "title": "Expired certificate", "type": "boolean", "description": "-ex/-expired", "default": false }, "selfSigned": { "title": "Self-signed certificate", "type": "boolean", "description": "-ss/-self-signed", "default": false }, "mismatched": { "title": "Mismatched certificate", "type": "boolean", "description": "-mm/-mismatched", "default": false }, "revoked": { "title": "Revoked certificate", "type": "boolean", "description": "-re/-revoked", "default": false }, "untrusted": { "title": "Untrusted certificate", "type": "boolean", "description": "-un/-untrusted", "default": false }, "resolvers": { "title": "Custom resolvers", "type": "array", "description": "-r/-resolvers", "items": { "type": "string" } }, "cacert": { "title": "Client certificate authority file", "type": "string", "description": "-cc/-cacert (path or inline PEM content, written to a temp file)." }, "cipherInput": { "title": "Ciphers to use", "type": "array", "description": "-ci/-cipher-input", "items": { "type": "string" } }, "sni": { "title": "TLS SNI hostname(s)", "type": "array", "description": "-sni", "items": { "type": "string" } }, "randomSni": { "title": "Use random SNI when empty", "type": "boolean", "description": "-rs/-random-sni", "default": false }, "revPtrSni": { "title": "Reverse PTR to retrieve SNI from IP", "type": "boolean", "description": "-rps/-rev-ptr-sni", "default": false }, "minVersion": { "title": "Minimum TLS version", "enum": [ "", "ssl30", "tls10", "tls11", "tls12", "tls13" ], "type": "string", "description": "-min-version", "default": "" }, "maxVersion": { "title": "Maximum TLS version", "enum": [ "", "ssl30", "tls10", "tls11", "tls12", "tls13" ], "type": "string", "description": "-max-version", "default": "" }, "certificate": { "title": "Include certificate (PEM) in JSON output", "type": "boolean", "description": "-cert/-certificate", "default": false }, "tlsChain": { "title": "Include certificate chain in JSON output", "type": "boolean", "description": "-tc/-tls-chain", "default": false }, "verifyCert": { "title": "Verify server certificate", "type": "boolean", "description": "-vc/-verify-cert", "default": false }, "hardfail": { "title": "Hardfail strategy on revocation check errors", "type": "string", "description": "-hf/-hardfail" }, "proxy": { "title": "SOCKS5 proxy", "type": "string", "description": "-proxy" }, "concurrency": { "title": "Concurrency", "type": "integer", "description": "-c/-concurrency", "default": 300 }, "cipherConcurrency": { "title": "Cipher enum concurrency", "type": "integer", "description": "-cec/-cipher-concurrency", "default": 10 }, "timeout": { "title": "Connection timeout (seconds)", "type": "integer", "description": "-timeout", "default": 5 }, "retry": { "title": "Retries", "type": "integer", "description": "-retry", "default": 3 }, "delay": { "title": "Delay between connections", "type": "string", "description": "-delay (e.g. 200ms, 1s)" }, "ctl": { "title": "Certificate Transparency (CT) log streaming", "type": "boolean", "description": "-ctl. Streams newly issued certs. Bounded by maxRuntimeSecs since this mode never terminates on its own.", "default": false }, "ctlBeginning": { "title": "CT logs: start from beginning", "type": "boolean", "description": "-cb/-ctl-beginning", "default": false }, "ctlIndex": { "title": "CT logs: per-log start index", "type": "array", "description": "-cti/-ctl-index. Format logURL=index, repeatable.", "items": { "type": "string" } }, "maxRuntimeSecs": { "title": "Max runtime (seconds, CT log mode only)", "type": "integer", "description": "Actor-level guard applied via `timeout` when CT log streaming is enabled, since -ctl runs indefinitely.", "default": 60 }, "dashboard": { "title": "Upload to PDCP dashboard", "type": "boolean", "description": "-pd/-dashboard", "default": false }, "auth": { "title": "PDCP API key", "type": "string", "description": "-auth" }, "teamId": { "title": "PDCP team ID", "type": "string", "description": "-tid/-team-id" }, "assetId": { "title": "PDCP asset ID", "type": "string", "description": "-aid/-asset-id" }, "assetName": { "title": "PDCP asset name", "type": "string", "description": "-aname/-asset-name" }, "extraFlags": { "title": "Extra raw CLI flags", "type": "string", "description": "Escape hatch: any additional tlsx flags appended verbatim to the command line." } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for TLSX - TLS Data Gathering and Analysis from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: