{
  "openapi": "3.0.1",
  "info": {
    "title": "Company Search API - Firmographics, Funding, Tech Stack",
    "description": "Search a B2B company database by employee count, revenue, location, keywords, technologies, funding and hiring activity. Returns firmographics, funding, socials and contact details. Pay per result. Bring your own API key.",
    "version": "0.1",
    "x-build-id": "4lVYbe68i8BLxgmDw"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~company-search-firmographics-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-company-search-firmographics-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-firmographics-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-company-search-firmographics-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-firmographics-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-company-search-firmographics-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 name",
            "type": "string",
            "description": "Find companies whose name matches this text. Partial matches are accepted, so `acme` also matches `Acme Corporation`."
          },
          "domains": {
            "title": "Company domains",
            "type": "array",
            "description": "Match these company domains exactly, one per line, for example `example.com`. Up to 1,000 domains per run.",
            "items": {
              "type": "string"
            }
          },
          "organizationIds": {
            "title": "Provider company ids",
            "type": "array",
            "description": "Match these company ids from the data provider, one per line. Use this when you already stored ids from a previous run.",
            "items": {
              "type": "string"
            }
          },
          "employeeRanges": {
            "title": "Employee count ranges",
            "type": "array",
            "description": "Employee count bands, one per line, written as `min,max`, for example `1,10` or `250,500`. Several bands are combined with OR.",
            "items": {
              "type": "string"
            }
          },
          "revenueMin": {
            "title": "Minimum annual revenue (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies with at least this much annual revenue. Enter a plain number, for example `1000000`."
          },
          "revenueMax": {
            "title": "Maximum annual revenue (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies with at most this much annual revenue. Enter a plain number, for example `50000000`."
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Headquarters locations to include, one per line. Cities, states and countries all work, for example `California, US` or `Germany`.",
            "items": {
              "type": "string"
            }
          },
          "excludeLocations": {
            "title": "Excluded locations",
            "type": "array",
            "description": "Headquarters locations to leave out, one per line. Applied after the include list.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keyword tags",
            "type": "array",
            "description": "Business keyword tags to match, one per line, for example `cloud security` or `logistics`.",
            "items": {
              "type": "string"
            }
          },
          "technologyUids": {
            "title": "Technologies in use",
            "type": "array",
            "description": "Technology identifiers the company currently uses, one per line, for example `salesforce` or `shopify`. Matching is OR across the list.",
            "items": {
              "type": "string"
            }
          },
          "totalFundingMin": {
            "title": "Minimum total funding (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies whose all-time funding is at least this amount. Plain number, no currency symbol."
          },
          "totalFundingMax": {
            "title": "Maximum total funding (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies whose all-time funding is at most this amount."
          },
          "latestFundingAmountMin": {
            "title": "Minimum latest round amount (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies whose most recent round was at least this size."
          },
          "latestFundingAmountMax": {
            "title": "Maximum latest round amount (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies whose most recent round was at most this size."
          },
          "latestFundingDateMin": {
            "title": "Latest round closed after",
            "type": "string",
            "description": "Earliest date of the most recent funding round, written as `YYYY-MM-DD`."
          },
          "latestFundingDateMax": {
            "title": "Latest round closed before",
            "type": "string",
            "description": "Latest date of the most recent funding round, written as `YYYY-MM-DD`."
          },
          "jobTitles": {
            "title": "Hiring for job titles",
            "type": "array",
            "description": "Only return companies with open roles matching these job titles, one per line, for example `account executive`.",
            "items": {
              "type": "string"
            }
          },
          "jobLocations": {
            "title": "Job locations",
            "type": "array",
            "description": "Only count open roles posted in these locations, one per line.",
            "items": {
              "type": "string"
            }
          },
          "jobPostingsMin": {
            "title": "Minimum open roles",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies with at least this many open roles."
          },
          "jobPostingsMax": {
            "title": "Maximum open roles",
            "minimum": 0,
            "type": "integer",
            "description": "Only return companies with at most this many open roles."
          },
          "jobPostedAfter": {
            "title": "Roles posted after",
            "type": "string",
            "description": "Only count open roles posted on or after this date, written as `YYYY-MM-DD`."
          },
          "jobPostedBefore": {
            "title": "Roles posted before",
            "type": "string",
            "description": "Only count open roles posted on or before this date, written as `YYYY-MM-DD`."
          },
          "rawParams": {
            "title": "Additional query parameters",
            "type": "object",
            "description": "Advanced. Any extra query parameter the data API supports, as a JSON object, for example `{\"organization_trading_status\": \"public\"}`. Values may be strings or arrays of strings. These are merged last and win over the fields above."
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Stop after this many companies (1-50,000). The provider caps any single search at 50,000 records, so narrow the filters to reach beyond that."
          },
          "pageSize": {
            "title": "Results per request",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "How many companies to fetch per API call (1-100). Larger pages are faster and cost fewer provider credits.",
            "default": 100
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own API key for the data provider. Required. It is generated in the provider's platform and shown only once, so store it somewhere safe. 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}