{
  "openapi": "3.0.1",
  "info": {
    "title": "People Finder & Email Verifier",
    "description": "Find people at any company by seniority and department. Four-layer cascade: website, SERP, and database enrichment with company-match scoring. Two-provider email waterfall (Icypeas, Prospeo) plus catch-all verification (Reoon, BounceBan). No direct LinkedIn scraping.",
    "version": "0.0",
    "x-build-id": "XOGXCauStktqKmspI"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/mambalabs~people-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-mambalabs-people-finder",
        "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/mambalabs~people-finder/runs": {
      "post": {
        "operationId": "runs-sync-mambalabs-people-finder",
        "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/mambalabs~people-finder/run-sync": {
      "post": {
        "operationId": "run-sync-mambalabs-people-finder",
        "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": {
          "domain": {
            "title": "Company Domain",
            "type": "string",
            "description": "Bare domain without https:// or trailing slash. Example: stripe.com"
          },
          "company_name": {
            "title": "Company Name (optional)",
            "type": "string",
            "description": "Used when no domain is available, or as a disambiguation hint alongside a domain."
          },
          "linkedin_company_url": {
            "title": "LinkedIn Company URL (optional)",
            "type": "string",
            "description": "Example: https://www.linkedin.com/company/stripe. Skips internal company resolution when provided."
          },
          "domains": {
            "title": "Company Domains (batch)",
            "type": "array",
            "description": "Optional list of bare domains. Takes precedence over the single domain field. Each domain is searched independently and every output row echoes its source domain.",
            "items": {
              "type": "string"
            }
          },
          "targetCount": {
            "title": "People Per Company",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Maximum people to return per company. Billing is per person actually returned, so a lower number is a hard cost cap.",
            "default": 5
          },
          "jobTitles": {
            "title": "Job Titles To Include",
            "type": "array",
            "description": "Case-insensitive substring match against the person's current title. Any match qualifies. Leave empty for no title filter. Example: VP Sales, Head of Growth",
            "items": {
              "type": "string"
            }
          },
          "excludeJobTitles": {
            "title": "Job Titles To Exclude",
            "type": "array",
            "description": "Case-insensitive substring match. A person matching any of these is dropped even if they matched an include. Example: intern, assistant, former",
            "items": {
              "type": "string"
            }
          },
          "seniority": {
            "title": "Seniority Levels",
            "type": "array",
            "description": "Filter to these normalized seniority levels. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "founder",
                "c_suite",
                "vp",
                "director",
                "head",
                "manager",
                "senior",
                "individual_contributor",
                "entry"
              ]
            }
          },
          "departments": {
            "title": "Departments",
            "type": "array",
            "description": "Filter to these normalized departments. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "executive",
                "sales",
                "marketing",
                "revops",
                "customer_success",
                "product",
                "engineering",
                "design",
                "finance",
                "hr",
                "legal",
                "it",
                "operations",
                "other"
              ]
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "ISO 3166-1 alpha-2 codes. Filters to people located in these countries. Example: US, GB, NL",
            "items": {
              "type": "string"
            }
          },
          "includeEmails": {
            "title": "Find Email Addresses",
            "type": "boolean",
            "description": "Discover a business email for each person found, using your Icypeas and/or Prospeo keys. Billed only when an email is actually returned. Turn off to build an org map cheaply.",
            "default": true
          },
          "verifyEmails": {
            "title": "Verify Email Addresses",
            "type": "boolean",
            "description": "Check deliverability of each email found, escalating catch-all domains to a second provider for a definitive answer. Requires a Reoon and/or BounceBan key.",
            "default": true
          },
          "verifyPosition": {
            "title": "Verify Position Is Current",
            "type": "boolean",
            "description": "Check that the person still holds the returned title at the target company, and report the reasoning. Reduces bounced outreach to people who have moved on.",
            "default": false
          },
          "suppressLinkedInUrls": {
            "title": "Suppress These LinkedIn URLs",
            "type": "array",
            "description": "LinkedIn profile URLs to exclude from results. Use to suppress already-contacted prospects or honor data subject removal requests.",
            "items": {
              "type": "string"
            }
          },
          "batchSize": {
            "title": "Batch Size",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many companies to search concurrently in batch mode. Default 5, maximum 10.",
            "default": 5
          },
          "skipCache": {
            "title": "Skip Cache",
            "type": "boolean",
            "description": "Results are cached for 7 days and reused on repeat lookups. Set true to force a fresh search.",
            "default": false
          },
          "serpApiKey": {
            "title": "Search API Key (optional)",
            "type": "string",
            "description": "Serper.dev API key. Unlocks the search layer, which is the highest-coverage source of LinkedIn profile URLs. Without it this actor falls back to company website parsing only, which returns far fewer people. Get a key at https://serper.dev. You are billed by Serper for searches; this actor does not mark them up."
          },
          "prospeoApiKey": {
            "title": "Prospeo API Key (optional)",
            "type": "string",
            "description": "Second provider in the email waterfall. Used only for people the first provider could not resolve. Get a key at https://prospeo.io. Billed to you by Prospeo; this actor does not mark it up."
          },
          "reoonApiKey": {
            "title": "Reoon API Key (optional)",
            "type": "string",
            "description": "Primary email verification. Returns deliverability status for each discovered address. Get a key at https://emailverifier.reoon.com. Billed to you by Reoon."
          },
          "bounceBanApiKey": {
            "title": "BounceBan API Key (optional)",
            "type": "string",
            "description": "Catch-all resolution. Used only when the primary verifier returns catch-all or risky, to determine whether that specific mailbox exists. Get a key at https://bounceban.com. Billed to you by BounceBan."
          },
          "icypeasApiKey": {
            "title": "Icypeas API Key (optional)",
            "type": "string",
            "description": "Optional. Only used for the licensed-database fallback layer, which runs when the company website and public search results do not yield enough people. Leave empty to skip that layer entirely; the run still succeeds and reports any shortfall in the summary."
          },
          "claudeApiKey": {
            "title": "Claude API Key (optional)",
            "type": "string",
            "description": "Optional. Only used to classify job titles that the built-in rule table cannot place into a seniority and department. One batched call per run, never per person. Leave empty to leave those two fields null on the affected rows."
          },
          "max_charge_usd": {
            "title": "Maximum charge for this run (USD)",
            "minimum": 0,
            "type": "number",
            "description": "Optional. The run stops before any charge that would take this run's total past this amount in USD, and every row already charged is kept. Leave it empty to rely only on the maximum cost per run set in Apify, which the actor also honors."
          },
          "source_tag": {
            "title": "Source Tag",
            "type": "string",
            "description": "Internal attribution tag set by Mamba Labs on published task examples. Not required, and nothing depends on it. Leave it empty."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}