{
  "openapi": "3.0.1",
  "info": {
    "title": "Similarweb Alternative — Website Traffic & Rank Analytics",
    "description": "Return a Similarweb-style traffic report per domain: Google search traffic, rank, top keywords, SEO competitors, and tech stack via DataForSEO. Use for competitor research and lead scoring. Visits stay empty when the Similarweb feed is unavailable. One row per domain at $0.20.",
    "version": "0.2",
    "x-build-id": "MDag2g1FGSXoQglKr"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/khadinakbar~similarweb-alternative/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-khadinakbar-similarweb-alternative",
        "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/khadinakbar~similarweb-alternative/runs": {
      "post": {
        "operationId": "runs-sync-khadinakbar-similarweb-alternative",
        "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/khadinakbar~similarweb-alternative/run-sync": {
      "post": {
        "operationId": "run-sync-khadinakbar-similarweb-alternative",
        "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 or website URLs",
            "minItems": 1,
            "maxItems": 25,
            "type": "array",
            "description": "Websites to score for traffic, rank, keywords, and competitors. Accepts hostnames or URLs such as apify.com or https://www.nytimes.com/section/world. Free tier keeps the first 3 unique domains; bulk_paid keeps 25. This is not a keyword list — use Keyword Search Volume API for phrases.",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 300
            }
          },
          "mode": {
            "title": "Mode",
            "enum": [
              "free_tier",
              "bulk_paid"
            ],
            "type": "string",
            "description": "How many unique domains this run may process. free_tier is the evaluation cap of 3 domains. bulk_paid raises the cap to 25 domains per run. Default is free_tier. This does not switch DataForSEO products — both modes use the same report shape.",
            "default": "free_tier"
          },
          "countryName": {
            "title": "Country",
            "type": "string",
            "description": "DataForSEO location name used for search-traffic and keyword context. Use full country names such as United States or United Kingdom. Defaults to United States. This is not a Similarweb country-rank filter when the Similarweb feed is offline.",
            "default": "United States"
          },
          "languageCode": {
            "title": "Language code",
            "type": "string",
            "description": "DataForSEO language code for Labs endpoints, such as en, de, or es. Defaults to en. Keep it aligned with the selected country. This is not a UI locale and does not translate the report.",
            "default": "en"
          },
          "includeCompetitors": {
            "title": "Include SEO competitors",
            "type": "boolean",
            "description": "Return overlapping Google organic competitors for each domain. Uses DataForSEO competitors_domain and skips the target itself. Defaults to true. Turn off to save a DataForSEO call when you only need traffic totals.",
            "default": true
          },
          "includeKeywords": {
            "title": "Include top keywords",
            "type": "boolean",
            "description": "Return the highest-ETV Google keywords the domain ranks for. Uses DataForSEO ranked_keywords. Defaults to true. Turn off when you only need traffic and competitor domains.",
            "default": true
          },
          "includeTechnologies": {
            "title": "Include site card and tech stack",
            "type": "boolean",
            "description": "Return title, description, DataForSEO domain rank, public emails, social URLs, and detected technologies. Defaults to true. This is a Domain Analytics technologies lookup, not a full BuiltWith export.",
            "default": true
          },
          "includeSimilarweb": {
            "title": "Try Similarweb feed",
            "type": "boolean",
            "description": "Attempt DataForSEO domain_analytics/similarweb/live for visits, bounce rate, and global rank. Defaults to true. If that feed is unavailable, the run continues with Labs search-traffic fields and leaves visits empty.",
            "default": true
          },
          "keywordLimit": {
            "title": "Keyword limit",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum top keywords stored on each domain row. Default 10, minimum 1, maximum 20. Applies only when includeKeywords is true. This is not a full keyword inventory dump.",
            "default": 10
          },
          "competitorLimit": {
            "title": "Competitor limit",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum SEO competitor domains stored on each row. Default 8, minimum 1, maximum 20. Applies only when includeCompetitors is true. The target domain is removed before this cap.",
            "default": 8
          },
          "onPartialFailure": {
            "title": "On domain failure",
            "enum": [
              "return_partial",
              "fail_if_any_batch_fails"
            ],
            "type": "string",
            "description": "return_partial writes every successful domain and marks the run PARTIAL if others fail. fail_if_any_batch_fails stops on the first DataForSEO domain error. Default is return_partial. Invalid hostnames are rejected before this setting applies.",
            "default": "return_partial"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}