Every API here is available over the APIs.io API and to AI agents over MCP.
{"openapi":"3.1.0","info":{"title":"Fiber AI API","version":"1.44.0","description":"# Welcome to the Fiber AI API!\n\n\n\nGet your API key at <https://fiber.ai/app/api>.\n\n## Authentication\n\nInclude your API key in **one** of the following ways (listed in priority order):\n\n**Option 1 — Request body (POST) or query params (GET):**\n```json\n{\n\"apiKey\": \"YOUR_API_KEY\"\n}\n```\n\nFor a GET request, you can include your API key in the query params like this:\n```\n?apiKey=YOUR_API_KEY\n```\n\n**Option 2 — `x-api-key` header:**\n```\nx-api-key: YOUR_API_KEY\n```\n\n**Option 3 — `Authorization` header (Bearer token):**\n```\nAuthorization: Bearer YOUR_API_KEY\n```\n\nIf an API key is provided in both the body/query and a header, the body/query value takes precedence.\n\n## Rate limits\n\nEach endpoint has its own rate limit, and if you exceed it you will get a '429' error. Please contact us if you'd like to request a higher rate limit.\n\n## Client timeouts\n\nSome sync endpoints perform live data fetches or multi-step enrichment and can take longer than the default HTTP client timeout (often 30s). Endpoints that require extra time display a **Recommended timeout** badge in their documentation. Configure your HTTP client's timeout to at least the recommended value before calling those endpoints to avoid premature connection drops.\n\n## Troubleshooting\n\nEvery response carries an `x-fiber-request-id` header. Log it alongside your request and include it in a support request — it's the fastest way for us to find the exact call you are describing.\n\nPolling endpoints don't carry an id we can look up. For those, include the request timestamp and the payload.\n\nNeed help? Write to adi@fiber.ai or your contact on the Fiber team.\n\n## Webhooks\n\nFiber can send webhook notifications to your application when certain events occur. You can configure your webhook endpoints at <https://fiber.ai/app/api> (the same page where you manage your API keys).\n\nFor a full list of available webhook event types, see <https://www.svix.com/event-types/us/org_36NygGf4vTv8iDHHZgXdCNazcJx/>.\n\n# SDKs & MCP\n\nIntegrate the Fiber API into your applications with official SDKs or via **MCP** (Model Context Protocol) for LLM and AI agents.\n\n- **[llms.txt](/llms.txt)** — Agent-facing index (routing, MCP workflows, links to `/ai-docs/`).\n- **[ai-docs](/ai-docs/index.md)** — Markdown docs for each endpoint; each lives at `/ai-docs/<operationId>.md`.\n- **Node.js SDK:** <https://www.npmjs.com/package/@fiberai/sdk>\n- **Python SDK:** <https://pypi.org/project/fiberai/>\n- **[Fiber SDKs](https://docs.fiber.ai/article/fiber-sdks)** — Client libraries and usage guides for your language or framework.\n- **[Using MCP in LLMs](https://docs.fiber.ai/article/using-mcp-in-llms)** — Connect Claude, Cursor, and other MCP-compatible tools to Fiber.\n- **[Developing with AI agents](https://docs.fiber.ai/article/developing-with-ai-agents)** — Plugins, MCP servers, skills, and quickstart for building with Fiber in your IDE.\n\n## OpenFiber: an open-source frontend for your agent\n\nBuilding an AI sales, recruiting, or GTM agent on top of the Fiber API? You don't have to build the UI from scratch. **OpenFiber** is our open-source frontend, built entirely on these APIs and the SDKs above. It already covers search, enrichment, audiences, trackers, and exports.\n\n- **[open.fiber.ai](https://open.fiber.ai)** — Try the live app.\n- **[GitHub repo](https://github.com/fiber-ai/open-fiber)** — Fork it, restyle it, and ship it.\n- **[OpenFiber docs](https://docs.fiber.ai/build/openfiber)** — Setup, white-labeling, and how to fork it into your own product.\n\nIt's MIT-licensed, so feel free to white-label it and drop it into your product. It'll help you get to market faster.\n\n---\n\n"},"components":{"schemas":{"HeadcountCrossedThreshold":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"headcount_crossed_threshold"},"entityType":{"type":"string","const":"company"},"direction":{"type":"string","enum":["above","below"],"description":"Whether to alert when headcount crosses the threshold going up or down"},"threshold":{"type":"integer","exclusiveMinimum":0,"description":"The employee count threshold to watch for crossing. Any positive integer is accepted."}},"required":["type","entityType","direction","threshold"],"title":"Headcount crossed threshold"},"HeadcountGrowthPercent":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"headcount_growth_percent"},"entityType":{"type":"string","const":"company"},"minPercentChange":{"type":"number","exclusiveMinimum":0,"maximum":1000,"description":"Minimum percent change to trigger (e.g. 20 means 20% growth)"},"direction":{"type":"string","enum":["grew","shrank","either"],"description":"Whether to alert on growth, shrinkage, or either"},"minStartingHeadcount":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Only alert if the company had at least this many employees before the change. Omit for any starting size."}},"required":["type","entityType","minPercentChange","direction"],"title":"Headcount growth percent"},"NewFundingRound":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"new_funding_round"},"entityType":{"type":"string","const":"company"},"minAmountUsd":{"type":["number","null"],"minimum":0,"description":"Only alert for rounds above this amount. Omit for any amount."},"roundTypes":{"type":["array","null"],"items":{"type":"string","enum":["pre_seed","seed","angel","series_a","series_b","series_c","series_d","series_e","series_f","series_g","private_equity","debt_financing","grant","convertible_note","corporate_round","undisclosed"]},"minItems":1,"description":"Round types to alert on. Defaults to equity-focused types when omitted. Set explicitly to include debt/grant types."}},"required":["type","entityType"],"title":"New funding round"},"FundingStageChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"funding_stage_changed"},"entityType":{"type":"string","const":"company"},"toStages":{"type":["array","null"],"items":{"type":"string","enum":["pre_seed","seed","series_a","series_b","series_c","series_d","series_e","series_f","series_g","private_equity","public","acquired"]},"minItems":1,"description":"Only alert if new stage is one of these. Omit for any stage change."}},"required":["type","entityType"],"title":"Funding stage changed"},"JobPostingWithKeyword":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"job_posting_with_keyword"},"entityType":{"type":"string","const":"company"},"keywords":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"Alert when a job posting contains any of these keywords in the selected search fields."},"searchFields":{"type":["array","null"],"items":{"type":"string","enum":["title","description"]},"minItems":1,"description":"Job posting fields to search for the keywords. Omit to search the title only."},"seniorityLevels":{"type":["array","null"],"items":{"type":"string","enum":["Internship","Entry level","Associate","Mid-Senior level","Director","Executive"]},"minItems":1,"description":"Only alert for these seniority levels. Omit for any level."},"modalities":{"type":["array","null"],"items":{"type":"string","enum":["On-site","Remote","Hybrid"]},"minItems":1,"description":"Only alert for these job modalities. Omit for any."},"locationTypes":{"type":["array","null"],"items":{"type":"string","enum":["remote","on_site","hybrid"]},"minItems":1,"description":"Deprecated. Use modalities instead.","deprecated":true},"minPostings":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Only alert if at least this many NEW matching postings are detected in a single check cycle. Omit for 1 (any new match)."}},"required":["type","entityType","keywords"],"title":"Job posting with keyword"},"JobPostingInFunction":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"job_posting_in_function"},"entityType":{"type":"string","const":"company"},"jobFunctions":{"type":["array","null"],"items":{"type":"string","enum":["Accounting","Administrative","Advertising","Analyst","Art / Creative","Business Development","Consulting","Customer Service","Design","Distribution","Education","Engineering","Finance","General Business","Health Care Provider","Human Resources","Information Technology","Legal","Management","Manufacturing","Marketing","Product Management","Production","Project Management","Public Relations","Purchasing","Quality Assurance","Research","Sales","Science","Strategy / Planning","Supply Chain","Training","Writing / Editing","Community & Social Services","Entrepreneurship","Military & Protective Services","Other","Program & Product Management","Real Estate"]},"description":"Alert when a job posting is in any of these departments/functions."},"minPostings":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Only alert if at least this many NEW matching postings are detected in a single check cycle. Omit for 1 (any new match)."}},"required":["type","entityType","jobFunctions"],"title":"Job posting in function"},"NewsWithKeyword":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"news_with_keyword"},"entityType":{"type":"string","const":"company"},"keywords":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"Alert when a news article title or summary matches any keyword"},"sentiment":{"type":["string","null"],"enum":["positive","negative","neutral",null],"description":"Only alert for news with this sentiment. Omit for any sentiment."}},"required":["type","entityType","keywords"],"title":"News with keyword"},"CompanyNews":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_news"},"entityType":{"type":"string","const":"company"},"sentiment":{"type":["string","null"],"enum":["positive","negative","neutral",null],"description":"Only alert for news with this sentiment. Omit for any sentiment."},"minArticles":{"type":["integer","null"],"minimum":1,"description":"Only alert when at least this many articles are detected in a single check. Useful for filtering noise from single tangential mentions. Omit for any count."}},"required":["type","entityType"],"title":"Company news"},"HqLocationChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"hq_location_changed"},"entityType":{"type":"string","const":"company"}},"required":["type","entityType"],"title":"HQ location changed"},"CompanyStatusChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_status_changed"},"entityType":{"type":"string","const":"company"},"toStatuses":{"type":["array","null"],"items":{"type":"string","enum":["operating","acquired","closed","ipo","subsidiary"]},"minItems":1,"description":"Only alert if new status is one of these. Omit for any status change."}},"required":["type","entityType"],"title":"Company status changed"},"TechnologyAdded":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"technology_added"},"entityType":{"type":"string","const":"company"},"technologies":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"Only alert for these technologies. Omit for any new technology."}},"required":["type","entityType"],"title":"Technology added"},"CompanyPosted":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_posted"},"entityType":{"type":"string","const":"company"},"minReactions":{"type":["integer","null"],"minimum":0,"description":"Only alert for posts with at least this many reactions. Omit for any."}},"required":["type","entityType"],"title":"Company posted"},"CompanyPostedWithKeyword":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_posted_with_keyword"},"entityType":{"type":"string","const":"company"},"keywords":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"Alert for posts matching these keywords."},"excludedKeywords":{"type":["array","null"],"items":{"type":"string","minLength":1},"maxItems":20,"description":"Suppress posts containing any of these keywords. A post that matches an exclusion keyword never alerts, even when it also matches the rule's keywords. Omit for no exclusions."},"minReactions":{"type":["integer","null"],"minimum":0,"description":"Only alert for posts with at least this many reactions. Omit for any."}},"required":["type","entityType"],"title":"Company posted with keyword"},"FollowerCountGrowth":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"follower_count_growth"},"entityType":{"type":"string","const":"company"},"minAbsoluteGrowth":{"type":["integer","null"],"minimum":0,"description":"Minimum absolute follower increase to trigger. Omit or set to 0 for any increase."},"minPercentGrowth":{"type":["number","null"],"exclusiveMinimum":0,"description":"Minimum percent follower increase to trigger. Omit for any increase."},"minStartingFollowerCount":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Only alert if the company had at least this many followers before the growth. Omit for any starting count."}},"required":["type","entityType"],"title":"Follower count growth"},"CompanyNameChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_name_changed"},"entityType":{"type":"string","const":"company"}},"required":["type","entityType"],"title":"Company name changed"},"CompanyDescriptionChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_description_changed"},"entityType":{"type":"string","const":"company"},"keywords":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"Only alert if new description contains one of these keywords. Omit for any change."}},"required":["type","entityType"],"title":"Company description changed"},"CompanyWentInactive":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_went_inactive"},"entityType":{"type":"string","const":"company"}},"required":["type","entityType"],"description":"Fires when a company becomes inactive.","title":"Company went inactive"},"EmployeeCountMilestone":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"employee_count_milestone"},"entityType":{"type":"string","const":"company"},"milestone":{"type":"integer","exclusiveMinimum":0,"description":"The employee count threshold to watch for crossing. Any positive integer is accepted. Equivalent to 'threshold' in headcount_crossed_threshold."},"direction":{"type":"string","enum":["above","below"],"description":"Whether to alert when crossing above or below the milestone"}},"required":["type","entityType","milestone","direction"],"description":"Fires when the employee count crosses the specified value. Supports any positive integer, not just round milestones. Functionally equivalent to headcount_crossed_threshold.","title":"Employee count milestone"},"NewOfficeLocation":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"new_office_location"},"entityType":{"type":"string","const":"company"},"countries":{"type":["array","null"],"items":{"type":"string","pattern":"^[A-Z]{3}$","minLength":3,"maxLength":3},"minItems":1,"description":"ISO 3166-1 alpha-3 country codes (e.g. 'USA', 'GBR', 'DEU'). Only alert for offices in these countries. Omit for any new office."},"cities":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"City names (e.g. 'San Francisco', 'London', 'Berlin'). Only alert for offices in these cities. Omit for any new office."},"regions":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"Region codes (e.g. 'X-EMEA', 'X-APAC', 'X-EUROPE'). Expands to constituent country codes. Omit for any."},"states":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"State or province names (e.g. 'California', 'Ontario'). Omit for any."}},"required":["type","entityType"],"title":"New office location"},"CompanyLogoChanged":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"company_logo_changed"},"entityType":{"type":"string","const":"company"}},"required":["type","entityType"],"title":"Company logo changed"},"AcquiredCompany":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"acquired_company"},"entityType":{"type":"string","const":"company"},"minPriceUsd":{"type":["number","null"],"minimum":0,"description":"Only alert for acquisitions above this price. Omit for any acquisition."}},"required":["type","entityType"],"title":"Acquired company"},"NewInvestor":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"new_investor"},"entityType":{"type":"string","const":"company"},"investorNames":{"type":["array","null"],"items":{"type":"string","minLength":1},"minItems":1,"description":"Only alert when a new investor's name matches one of these (exact, case-insensitive). Omit for any new investor."}},"required":["type","entityType"],"title":"New investor"},"JoinedAccelerator":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"joined_accelerator"},"entityType":{"type":"string","const":"company"},"acceleratorNames":{"type":["array","null"],"items":{"type":"string","enum":["a16z_speedrun","accel_atoms","ai2_incubator","alchemist_accelerator","alliance","antler","berkeley_skydeck","founders_inc","google_startups","launch_accelerator","neo","pear_x","plug_and_play","sosv","south_park_commons","startx","techstars","the_mint","ycombinator"]},"minItems":1,"description":"Only alert when the company joins one of these accelerators. Omit for any accelerator. There is no batch selection: companies always join the latest batch."}},"required":["type","entityType"],"title":"Joined an accelerator"},"RecentlyHiredWithTitle":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"recently_hired_with_title"},"entityType":{"type":"string","const":"company"},"titleKeywords":{"type":"array","items":{"type":"string","minLength":1},"minItems":1,"description":"Title keywords to search for. Fires when the company hires someone whose title matches any keyword."},"minNewHires":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Minimum number of NEW hires detected in a single check cycle to trigger the alert. Only counts employees who appeared since the last check. Omit for 1."}},"required":["type","entityType","titleKeywords"],"title":"Recently hired with title"},"DepartmentSizeThreshold":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"department_size_threshold"},"entityType":{"type":"string","const":"company"},"department":{"type":"string","enum":["Accounting","Administrative","Advertising","Analyst","Art / Creative","Business Development","Consulting","Customer Service","Design","Distribution","Education","Engineering","Finance","General Business","Health Care Provider","Human Resources","Information Technology","Legal","Management","Manufacturing","Marketing","Product Management","Production","Project Management","Public Relations","Purchasing","Quality Assurance","Research","Sales","Science","Strategy / Planning","Supply Chain","Training","Writing / Editing","Community & Social Services","Entrepreneurship","Military & Protective Services","Other","Program & Product Management","Real Estate"],"description":"Department to track. Matched against the company's organizational structure."},"threshold":{"type":"integer","exclusiveMinimum":0,"description":"The employee count threshold to watch for crossing"},"direction":{"type":"string","enum":["above","below"],"description":"Whether to alert when department size crosses above or below the threshold"}},"required":["type","entityType","department","threshold","direction"],"title":"Department size threshold"},"RecentLayoffs":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"recent_layoffs"},"entityType":{"type":"string","const":"company"},"minPeopleAffected":{"type":["integer","null"],"exclusiveMinimum":0,"description":"Only alert if at least this many people were laid off. Omit for any layoff."},"minPercentAffected":{"type":["number","null"],"exclusiveMinimum":0,"maximum":100,"description":"Only alert if at least this percentage of the workforce was laid off. Omit for any layoff."}},"required":["type","entityType"],"title":"Recent layoffs"},"HeadcountCrossedThresholdResponse":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"headcount_crossed_threshold"},"entityType":{"type":"string","const":"company"},"direction":{"type":"string","enum":["above","below"],"description":"Whether to alert when headcount crosses the threshold going up or down"},"threshold":{"type":"integer","exclusiveMinimum":0,"description":"The employee count threshold to watch for crossing. Any positive integer is accepted."},"id":{"type":"string","description":"Unique rule ID. Use with removeRuleIds to delete a specific rule."}},"required":["isDummy","type","entityType","direction","threshold","id"],"title":"Headcount crossed threshold"},"HeadcountGrowthPercentResponse":{"type":"object","properties":{"lookbackDays":{"type":["integer","null"],"minimum":1,"maximum":90,"description":"Compare against a snapshot from approximately N days ago instead of the most recent prior snapshot. Omit for the default previous-snapshot comparison. Maximum 90 days."},"isDummy":{"type":"boolean","description":"When true, this rule only fires via the fire-dummy endpoint and is skipped during normal pipeline runs."},"type":{"type":"string","const":"headcount_growth_percent"},"entityType":{"type":"string","const":"company"},"minPercentChange":{"type":"number","exclusiveMinimum":0,"maximum":1000,"description":"Minimum percent change to trigger (e.g. 20 means 20% growth)"},"direction":{"type":"string","enum":["grew","shrank","either"],"description":"Whether to alert on
# --- truncated at 32 KB (8241 KB total) ---
# Full source: https://artifacts.apis.io/fiber-ai/openapi/_original/fiber-ai-api-openapi.json