overlay: 1.0.0
info:
title: API Evangelist enhancements for the Coresignal Collect API
version: 1.0.0
extends: openapi/coresignal-collect-api-openapi.yml
x-generated: '2026-08-13'
x-method: generated
x-source: >-
Derived from artifacts in this repo: conventions/coresignal-conventions.yml,
errors/coresignal-error-codes.yml, plans/coresignal-plans-pricing.yml,
data-model/coresignal-data-model.yml. Captures API Evangelist annotations only; the underlying spec
is never mutated.
actions:
- target: $.info
update:
x-apievangelist-slug: coresignal
x-apievangelist-artifacts:
conventions: conventions/coresignal-conventions.yml
errors: errors/coresignal-error-codes.yml
plans: plans/coresignal-plans-pricing.yml
data_model: data-model/coresignal-data-model.yml
mcp: mcp/coresignal-mcp.yml
x-metering:
unit: credit
remaining_header: x-credits-remaining
exhaustion_status: 402
note: Credits are deducted on each successful (200) collect. Search is free.
- target: $.components.securitySchemes.apiKey
update:
description: >-
32-character alphanumeric API key issued in the Coresignal dashboard, sent in the `apikey`
request header. No scopes.
x-key-format: 32-character alphanumeric
x-issuer: https://dashboard.coresignal.com/
- target: $.paths['/collect/{id}'].get
update:
x-credit-cost: 20
x-credit-cost-note: >-
Multi-source Company / Employee records cost 20 credits each; Base and Clean cost 10; Jobs and
Posts cost 1. Source: https://docs.coresignal.com/pricing/pricing
x-404-semantics: >-
404 is overloaded — it means either a nonexistent API URL or a record id absent from the
database. Check the path before treating it as a data miss.
- target: $.paths['/bulk_collect'].post
update:
x-async: true
x-max-ids: 10000
x-retrieval-window-days: 30
x-duplicate-detection:
status: 409
body: '{"detail": "Identical data request is already in progress."}'
note: >-
Server-side de-duplication of identical in-flight submissions. This is NOT a client-supplied
idempotency key — the caller cannot name or replay a request.
x-credit-cost-note: One credit unit per record collected, at the per-record rate for the dataset.
- target: $.paths['/bulk_collect'].post.responses
update:
'201':
description: Bulk job accepted.
'202':
description: The bulk process is in progress; poll the job.
'409':
description: >-
Duplicate POST — an identical data request is already in progress. Poll the existing job
rather than resubmitting.
'422':
description: >-
Request exceeded the 10,000 ID limit, contained duplicates, or the provided URLs cannot be
parsed into shorthand names.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.