{
  "openapi": "3.0.1",
  "info": {
    "title": "Domain Security Analyzer — WHOIS, DNS, SSL & Company Contacts",
    "description": "Analyze any domain's WHOIS, DNS, email security, SSL/TLS certificates, protocols, ciphers and vulnerabilities, plus public company contacts (emails, phones, address, LinkedIn, VAT). Security score and grade in one API.",
    "version": "1.0",
    "x-build-id": "6bxM8ncL0nrREz2iX"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/securas-technologies~domain-security-analyzer-whois-dns-ssl-tls/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-securas-technologies-domain-security-analyzer-whois-dns-ssl-tls",
        "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/securas-technologies~domain-security-analyzer-whois-dns-ssl-tls/runs": {
      "post": {
        "operationId": "runs-sync-securas-technologies-domain-security-analyzer-whois-dns-ssl-tls",
        "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/securas-technologies~domain-security-analyzer-whois-dns-ssl-tls/run-sync": {
      "post": {
        "operationId": "run-sync-securas-technologies-domain-security-analyzer-whois-dns-ssl-tls",
        "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",
        "required": [
          "domains"
        ],
        "properties": {
          "domains": {
            "title": "Domains",
            "minItems": 1,
            "maxItems": 1000,
            "type": "array",
            "description": "Domains to analyze. You can paste bare domains (example.com) or full URLs (https://www.example.com/path) — the hostname is extracted automatically.",
            "items": {
              "type": "string"
            }
          },
          "checkWhois": {
            "title": "WHOIS / RDAP",
            "type": "boolean",
            "description": "Retrieve registration data: registrar, creation and expiration dates, nameservers, domain status, and public registrant information. Uses RDAP first, with a WHOIS (port 43) fallback.",
            "default": true
          },
          "checkDns": {
            "title": "DNS analysis",
            "type": "boolean",
            "description": "Resolve A, AAAA, CNAME, MX, NS, TXT, SOA and CAA records, and evaluate email security (SPF, DMARC) and DNSSEC.",
            "default": true
          },
          "checkSsl": {
            "title": "SSL/TLS analysis",
            "type": "boolean",
            "description": "Analyze the certificate chain, supported SSL/TLS protocols, cipher suites, HSTS and key exchange.",
            "default": true
          },
          "checkVulnerabilities": {
            "title": "SSL/TLS vulnerability tests",
            "type": "boolean",
            "description": "Actively test for Heartbleed, OpenSSL CCS injection, ROBOT, CRIME (TLS compression), insecure renegotiation and TLS_FALLBACK_SCSV. Adds roughly 15–60 seconds per domain.",
            "default": true
          },
          "checkWebsiteContacts": {
            "title": "Website contact info (lead enrichment)",
            "type": "boolean",
            "description": "Read the public website (home, contact, legal notice and about pages) to extract the company name, emails, phone numbers, postal address, social profiles, schema.org organization data and legal identifiers (VAT, SIREN/SIRET, tax ID). Useful for lead enrichment and supplier verification when WHOIS data is redacted. robots.txt is respected.",
            "default": true
          },
          "port": {
            "title": "TLS port",
            "minimum": 1,
            "maximum": 65535,
            "type": "integer",
            "description": "Port used for the SSL/TLS analysis.",
            "default": 443
          },
          "fallbackToWww": {
            "title": "Fall back to www.",
            "type": "boolean",
            "description": "If the apex domain does not answer on the TLS port, analyze www.<domain> instead.",
            "default": true
          },
          "maxContactPages": {
            "title": "Max website pages",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum number of website pages read per domain for contact extraction (home page included).",
            "default": 5
          },
          "includeCipherSuites": {
            "title": "Include full cipher suite list",
            "type": "boolean",
            "description": "Include every accepted cipher suite (name, key size, key exchange) per protocol. When disabled, only counts and weak ciphers are returned.",
            "default": true
          },
          "includeCertificatePem": {
            "title": "Include certificate PEM",
            "type": "boolean",
            "description": "Include the PEM-encoded certificate chain in the output.",
            "default": false
          },
          "includeRawWhois": {
            "title": "Include raw WHOIS text",
            "type": "boolean",
            "description": "Include the raw WHOIS response when the WHOIS fallback is used.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many domains are analyzed in parallel.",
            "default": 5
          },
          "timeoutSecs": {
            "title": "Network timeout (seconds)",
            "minimum": 2,
            "maximum": 60,
            "type": "integer",
            "description": "Timeout for individual network operations (DNS queries, RDAP/WHOIS requests, TLS connections).",
            "default": 10
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}