{
  "openapi": "3.0.1",
  "info": {
    "title": "Company Search and Research API - B2B Firmographics",
    "description": "Search a B2B company database by industry, size, revenue, location, technology, news events and funding stage, then optionally run deep research for phones, full address and tech stack. Pay per result. Bring your own API key.",
    "version": "0.1",
    "x-build-id": "DX2vwKCknDUOtNoiK"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~company-search-research-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-company-search-research-api",
        "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/nabeelbaghoor~company-search-research-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-company-search-research-api",
        "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/nabeelbaghoor~company-search-research-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-company-search-research-api",
        "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": {
          "companyName": {
            "title": "Company names",
            "type": "array",
            "description": "Company names to match, one per line. Up to 100.",
            "items": {
              "type": "string"
            }
          },
          "companyNameSearchType": {
            "title": "Name match type",
            "enum": [
              "default",
              "related",
              "exact"
            ],
            "type": "string",
            "description": "`default` is a normal name match, `exact` requires the whole name to match, and `related` also returns similar companies.",
            "default": "default"
          },
          "companyDomain": {
            "title": "Company domains",
            "type": "array",
            "description": "Company website domains to match, one per line, for example `example.com`. Up to 100.",
            "items": {
              "type": "string"
            }
          },
          "companyType": {
            "title": "Company type",
            "enum": [
              "Public",
              "Private"
            ],
            "type": "string",
            "description": "Restrict to publicly traded or privately held companies. Leave unset to return both."
          },
          "companyCountry": {
            "title": "Countries",
            "type": "array",
            "description": "Countries to include, one per line, for example `US` or `Canada`. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "companyState": {
            "title": "States",
            "type": "array",
            "description": "States or provinces to include, one per line, for example `CA` or `TX`. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "companyZipCode": {
            "title": "Postal codes",
            "type": "array",
            "description": "Postal or ZIP codes to include, one per line. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "industry": {
            "title": "Industries",
            "type": "array",
            "description": "Industries to include, one per line, using the provider's own industry labels. Up to 5.",
            "items": {
              "type": "string"
            }
          },
          "companyKeyword": {
            "title": "Keywords",
            "type": "array",
            "description": "Keywords to match against a company's description, one per line. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "companySize": {
            "title": "Employee bands",
            "type": "array",
            "description": "Employee count bands to include, one per line, using the provider's band labels. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "companyRevenue": {
            "title": "Revenue bands",
            "type": "array",
            "description": "Annual revenue bands to include, one per line, using the provider's band labels. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "foundedOn": {
            "title": "Company age buckets",
            "type": "array",
            "description": "Company age buckets to include, one per line, using the provider's own bucket labels. Up to 4.",
            "items": {
              "type": "string"
            }
          },
          "technologies": {
            "title": "Technologies in use",
            "type": "array",
            "description": "Technologies the company runs, one per line. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "technologiesIsOr": {
            "title": "Match any technology",
            "type": "boolean",
            "description": "When enabled, a company matching any one of the listed technologies is returned. When off, a company must use all of them.",
            "default": true
          },
          "newsTypes": {
            "title": "News event types",
            "type": "array",
            "description": "News and event types to require, one per line, for example `Acquisition` or `Expansion`. Up to 8.",
            "items": {
              "type": "string"
            }
          },
          "newsTypeDates": {
            "title": "News recency (days)",
            "type": "array",
            "description": "How recent the news must be, as a single value: `60`, `90`, `180` or `365`. Only one value is accepted.",
            "items": {
              "type": "string"
            }
          },
          "latestFundingDates": {
            "title": "Funding recency (days)",
            "type": "array",
            "description": "How recent the latest funding round must be, as a single value: `90`, `180`, `365` or `1095`. Only one value is accepted.",
            "items": {
              "type": "string"
            }
          },
          "latestFundingClassifications": {
            "title": "Funding stages",
            "type": "array",
            "description": "Funding stages to include, one per line, for example `Seed` or `Series B`. Up to 14.",
            "items": {
              "type": "string"
            }
          },
          "latestFundingTotals": {
            "title": "Funding amount bands",
            "type": "array",
            "description": "Total funding bands to include, one per line, using the provider's band labels. Up to 9.",
            "items": {
              "type": "string"
            }
          },
          "researchCompanies": {
            "title": "Run deep research on each match",
            "type": "boolean",
            "description": "When enabled, every matched company is sent through the provider's research pass, which adds phone numbers, the full address, the technology stack and a longer description. Research is asynchronous and consumes extra provider credits. Rows whose research does not finish in time keep their search data.",
            "default": false
          },
          "skipDeduplicationCheck": {
            "title": "Skip the recent-research check",
            "type": "boolean",
            "description": "When enabled, research runs again even for companies your account researched recently. Leave this off to reuse recent work and save provider credits.",
            "default": false
          },
          "rawFilters": {
            "title": "Additional filters",
            "type": "object",
            "description": "Advanced. Any extra filter the data API supports, as a JSON object. Merged last, so it also overrides the fields above."
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Stop after this many companies (1-20,000). One row is one company."
          },
          "pageSize": {
            "title": "Results per request",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "How many companies to fetch per API call (1-100). Larger pages mean fewer calls against your provider rate limit.",
            "default": 50
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own API key for the data provider. Required. It is created in the provider's platform. Stored securely here and never logged."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}