API Reference
Documents
Authorization
InfraApiKey AuthorizationBearer <token>
Send sk_live_* (production) or sk_test_* (test mode).
In: header
Query Parameters
symbols?array<string>|null
doc_types?array<string>|null
cursor?string|null
limit?integer|null
Response Body
application/json
application/problem+json
application/json
application/problem+json
curl -X GET "https://example.com/v1/documents"{ "data": [ { "id": 81194, "ticker": "UBER", "title": "Uber Q1 2026 earnings presentation", "doc_type": "slide_deck", "doc_url": "https://investor.uber.com/static-files/3d6f8a5f-4c43-4e51-9e03-bf8728f0f785", "language": "en", "published_at": "2026-05-07T00:00:00+00:00", "pages": 24, "event_id": 51791, "doc_group": "slide_deck", "provenance": { "src_id": "src_ir_documents_9bf6656f240e9c20", "source_provider": "signals_ir", "source_url": "https://investor.uber.com/static-files/3d6f8a5f-4c43-4e51-9e03-bf8728f0f785", "accession": null, "quote": null, "content_hash": null, "extracted_at": null } } ], "pagination": { "next_cursor": null, "has_more": false }}{ "type": "https://docs.signals.ai/errors/invalid-key", "title": "Invalid API key", "status": 401, "detail": "Missing or invalid API key.", "request_id": "req_0dc23f9b4a0f8f2a", "instance": "/v1/companies/UBER"}{ "detail": [ { "type": "string_too_short", "loc": [ "body", "query" ], "msg": "String should have at least 2 characters", "input": "q", "ctx": { "min_length": 2 } } ]}{ "type": "https://docs.signals.ai/errors/rate-limited", "title": "Rate limit exceeded", "status": 429, "detail": "Your current plan's burst or daily quota has been exceeded.", "request_id": "req_8b44f5d1a8d1f48b", "instance": "/v1/search"}Authorization
InfraApiKey AuthorizationBearer <token>
Send sk_live_* (production) or sk_test_* (test mode).
In: header
Path Parameters
doc_id*Doc Id
Response Body
application/json
application/problem+json
application/json
application/problem+json
curl -X GET "https://example.com/v1/documents/0"{ "id": 81194, "ticker": "UBER", "title": "Uber Q1 2026 earnings presentation", "doc_type": "slide_deck", "doc_url": "https://investor.uber.com/static-files/3d6f8a5f-4c43-4e51-9e03-bf8728f0f785", "language": "en", "published_at": "2026-05-07T00:00:00+00:00", "pages": 24, "event_id": 51791, "doc_group": "slide_deck", "provenance": { "src_id": "src_ir_documents_9bf6656f240e9c20", "source_provider": "signals_ir", "source_url": "https://investor.uber.com/static-files/3d6f8a5f-4c43-4e51-9e03-bf8728f0f785", "accession": null, "quote": null, "content_hash": null, "extracted_at": null }, "page_count": 24}{ "type": "https://docs.signals.ai/errors/invalid-key", "title": "Invalid API key", "status": 401, "detail": "Missing or invalid API key.", "request_id": "req_0dc23f9b4a0f8f2a", "instance": "/v1/companies/UBER"}{ "detail": [ { "type": "string_too_short", "loc": [ "body", "query" ], "msg": "String should have at least 2 characters", "input": "q", "ctx": { "min_length": 2 } } ]}{ "type": "https://docs.signals.ai/errors/rate-limited", "title": "Rate limit exceeded", "status": 429, "detail": "Your current plan's burst or daily quota has been exceeded.", "request_id": "req_8b44f5d1a8d1f48b", "instance": "/v1/search"}Authorization
InfraApiKey AuthorizationBearer <token>
Send sk_live_* (production) or sk_test_* (test mode).
In: header
Path Parameters
doc_id*Doc Id
Query Parameters
page?|
0-based page index; omit for all
cursor?string|null
limit?integer|null
Response Body
application/json
application/problem+json
application/json
application/problem+json
curl -X GET "https://example.com/v1/documents/0/pages"{ "document_id": 81194, "data": [ { "document_id": 81194, "page_index": 0, "text": "Q1 2026 Gross Bookings grew 18% year over year to $44.8 billion.", "ocr_text": null, "vision_caption": "Title slide with Uber Q1 2026 results." } ], "pagination": { "next_cursor": null, "has_more": false }}{ "type": "https://docs.signals.ai/errors/invalid-key", "title": "Invalid API key", "status": 401, "detail": "Missing or invalid API key.", "request_id": "req_0dc23f9b4a0f8f2a", "instance": "/v1/companies/UBER"}{ "detail": [ { "type": "string_too_short", "loc": [ "body", "query" ], "msg": "String should have at least 2 characters", "input": "q", "ctx": { "min_length": 2 } } ]}{ "type": "https://docs.signals.ai/errors/rate-limited", "title": "Rate limit exceeded", "status": 429, "detail": "Your current plan's burst or daily quota has been exceeded.", "request_id": "req_8b44f5d1a8d1f48b", "instance": "/v1/search"}