DEVELOPER GUIDE

Endpoint reference

Search and filter every documented operation by method and access.

Complete endpoint reference

Browse all 298 documented REST operations. Expand an operation for authentication, parameters, request fields and responses. Request templates use placeholder identifiers. Source-dependent, browser-only, internal and retired contracts retain their own access boundaries; listing an operation does not activate a source or grant access.

298 operations. Expand a group to browse without searching.

Accounts (31)
POST /auth/signupCreate a free-plan organization and begin email verification

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SignupRequest

FieldRequiredType / constraintsDescription
displayNameYesstring · minLength: 1; maxLength: 120
emailYesstring · format: "email"; maxLength: 254
organizationNameYesstring · minLength: 1; maxLength: 160
passwordYesstring · minLength: 12; maxLength: 128
acceptedTermsYesboolean · const: true
termsVersionYesstring · const: "2026-10-22"Version of the Service Terms presented when assent was collected.
privacyVersionYesstring · const: "2026-10-18"Version of the Privacy Notice acknowledged when assent was collected.
turnstileTokenYesstring · minLength: 1; maxLength: 2048Single-use Cloudflare Turnstile token for action auth-signup.
Request schema
{
  "$ref": "#/components/schemas/SignupRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Free-plan account created; returns either a verification receipt or

Content type: application/json

Response schema
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/EmailVerificationPendingResponse"
    },
    {
      "$ref": "#/components/schemas/AuthSessionResponse"
    }
  ]
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/signup/statusCheck verification from the browser that initiated signup

First-party account flow · follow the website instructions

First-party browser flow. Accepts the signed handoffTicket returned by signup, valid for 30 minutes. It is not an email-verification token or login credential. Returns only verification state for that signup; never grants a session. The response is no-store. Limit is 240 checks per ticket per 20 minutes, plus general request safeguards.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SignupHandoffRequest

FieldRequiredType / constraintsDescription
ticketYesstring · minLength: 64; maxLength: 644; pattern: "^[A-Za-z0-9_-]{20,600}\\.[A-Za-z0-9_-]{43}$"Signed 30-minute signup handoff. Treat as sensitive; do not log or persist in URLs. Not an email-verification token or session credential.
Request schema
{
  "$ref": "#/components/schemas/SignupHandoffRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Current verification state for this signup

Content type: application/json

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "object",
      "required": [
        "verified"
      ],
      "properties": {
        "verified": {
          "type": "boolean"
        }
      }
    },
    "meta": {
      "$ref": "#/components/schemas/ApiMeta"
    }
  }
}

HTTP 400

Invalid or expired ticket; error code invalid_signup_handoff

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/signup/completeComplete verified signup in the originating browser

First-party account flow · follow the website instructions

Requires the unexpired signup handoff ticket, completed email verification and the account password. The ticket alone never signs a user in. MFA, account/workspace checks and login rate limits still apply. Production issues a Secure HttpOnly browser cookie, never a raw session credential. The default 12-hour session applies; rememberMe is not an input to this operation. Use the first-party website; this is not an API-key authentication endpoint. No new Turnstile token is required because the ticket was issued after the protected signup request.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
ticketYesstring · minLength: 64; maxLength: 644; pattern: "^[A-Za-z0-9_-]{20,600}\\.[A-Za-z0-9_-]{43}$"Signed 30-minute signup handoff. Treat as sensitive; do not log or persist in URLs. Not an email-verification token or session credential.
passwordYesstring · minLength: 1; maxLength: 128
Request schema
{
  "type": "object",
  "required": [
    "ticket",
    "password"
  ],
  "properties": {
    "ticket": {
      "$ref": "#/components/schemas/SignupHandoffTicket"
    },
    "password": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "writeOnly": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Browser session created

Content type: application/json

AuthSessionResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AuthSessionResponse"
}

HTTP 202

Password verified; MFA challenge required before session creation

HTTP 400

Invalid or expired ticket; error code invalid_signup_handoff

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Email verification is still pending; error code email_verification_pending

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/loginExchange an account email and password for an expiring browser session

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

LoginRequest

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"; maxLength: 254
passwordYesstring · minLength: 1; maxLength: 128
rememberMeNoboolean · default: falseWhen true
turnstileTokenYesstring · minLength: 1; maxLength: 2048Single-use Cloudflare Turnstile token for action auth-login.
Request schema
{
  "$ref": "#/components/schemas/LoginRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Browser session created when no factor is configured

Content type: application/json

AuthSessionResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AuthSessionResponse"
}

HTTP 202

Password verified; TOTP or passkey challenge required before a session is created

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/email/verifyConsume a single-use email-verification token without signing in the device that opened it

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

AccountActionTokenRequest

FieldRequiredType / constraintsDescription
tokenYesstring · pattern: "^fs_verify_[A-Za-z0-9_-]{43}$"
Request schema
{
  "$ref": "#/components/schemas/AccountActionTokenRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Email verified; the user signs in separately

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/email/resendRequest a replacement verification email without revealing account existence

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

EmailActionRequest

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"; maxLength: 254
turnstileTokenYesstring · minLength: 1; maxLength: 2048Single-use Cloudflare Turnstile token bound to the corresponding recovery action.
Request schema
{
  "$ref": "#/components/schemas/EmailActionRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 202

Request accepted whether or not the account exists

Content type: application/json

AccountActionAcceptedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AccountActionAcceptedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/password-reset/requestRequest a password-reset email without revealing account existence

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

EmailActionRequest

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"; maxLength: 254
turnstileTokenYesstring · minLength: 1; maxLength: 2048Single-use Cloudflare Turnstile token bound to the corresponding recovery action.
Request schema
{
  "$ref": "#/components/schemas/EmailActionRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 202

Request accepted whether or not the account exists

Content type: application/json

AccountActionAcceptedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AccountActionAcceptedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/password-reset/confirmConsume a single-use reset token, replace the password, and revoke active sessions

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

PasswordResetConfirmRequest

FieldRequiredType / constraintsDescription
tokenYesstring · pattern: "^fs_reset_[A-Za-z0-9_-]{43}$"
passwordYesstring · minLength: 12; maxLength: 128
Request schema
{
  "$ref": "#/components/schemas/PasswordResetConfirmRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Password changed and existing browser sessions revoked

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /auth/logoutRevoke the current browser session

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Browser session revoked

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/monitoringGet Monitoring v1 preferences and recent email delivery history

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/monitoring' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Monitoring preferences and deliveries

Content type: application/json

MonitoringOverviewResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MonitoringOverviewResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/monitoring/preferencesConfigure license-free SEC filing and financing-change email alerts after source detection

API key or signed-in session

Owner or admin role required. Issuer filters must belong to the organization watchlist.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

MonitoringPreferenceRequest

Request schema
{
  "$ref": "#/components/schemas/MonitoringPreferenceRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request PATCH 'https://api.filingsift.com/api/v1/account/monitoring/preferences' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Updated monitoring preferences

Content type: application/json

MonitoringPreferenceResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MonitoringPreferenceResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/monitoring/deliveriesList Monitoring v1 delivery, retry, and provenance history

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 50

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/monitoring/deliveries' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Monitoring delivery history

Content type: application/json

MonitoringDeliveryListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MonitoringDeliveryListResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/monitoring/testSend a provenance-bearing test alert using the latest indexed watched filing

API key or signed-in session

Owner or admin role required. Limited to three test deliveries per user per hour.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/monitoring/test' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 201

Test alert delivered

Content type: application/json

MonitoringDeliveryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MonitoringDeliveryResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/monitoring/deliveries/{deliveryId}/retryQueue a failed or waiting Monitoring v1 delivery for immediate retry

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
deliveryIdpathYesstring · format: "uuid"

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/monitoring/deliveries/YOUR_DELIVERYID/retry' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Delivery queued for retry

Content type: application/json

MonitoringDeliveryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MonitoringDeliveryResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reader/annotationsList the signed-in user's private highlights and notes for one filing

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
accessionqueryYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

User-scoped private annotations

Content type: application/json

ReaderAnnotationListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderAnnotationListResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/reader/annotationsSave a private highlight and note against an exact server-verified passage

Signed-in website session · API keys are not accepted

Browser session required. The server copies the exact passage and hash; callers cannot submit evidence text.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

ReaderAnnotationRequest

FieldRequiredType / constraintsDescription
accessionYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
passageIdYesstring · pattern: "^(evidence|section|table)-[0-9a-f]{20}$"
noteNostring · maxLength: 4000
colorNostring · default: "yellow"; one of: "yellow", "green", "blue", "pink"
visibilityNostring · default: "personal"; one of: "personal", "team"
mentionedUserIdsNoarray · maxItems: 20
Request schema
{
  "$ref": "#/components/schemas/ReaderAnnotationRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Annotation created or updated

Content type: application/json

ReaderAnnotationResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderAnnotationResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/reader/annotations/{annotationId}Delete one private annotation owned by the signed-in user

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
annotationIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Annotation deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /accountGet the current organization, identity, plan, usage, companies, members, and redacted keys

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Current account overview

Content type: application/json

AccountResponse

FieldRequiredType / constraintsDescription
dataYesschema
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AccountResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /accountPermanently delete the signed-in account after explicit confirmation

Signed-in website session · API keys are not accepted

Browser session only. Active subscriptions must be cancelled first; protected platform administrators must transfer administration. Account deletion revokes credentials and cleans up private account data transactionally.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
currentPasswordYesstring · minLength: 1; maxLength: 128
confirmationYesstring · const: "DELETE"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "currentPassword",
    "confirmation"
  ],
  "properties": {
    "currentPassword": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "writeOnly": true
    },
    "confirmation": {
      "type": "string",
      "const": "DELETE"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Account deleted and active credentials revoked

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/profileChange the signed-in user's display name

Signed-in website session · API keys are not accepted

Browser session only. The name is shown in team member and review-assignment views; email, role, and entitlements are unchanged.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
displayNameYesstring · minLength: 1; maxLength: 120
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "displayName"
  ],
  "properties": {
    "displayName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Updated display name

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/emailChange the signed-in user's email and send a new verification message

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"; maxLength: 254
currentPasswordYesstring · minLength: 1; maxLength: 128
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "email",
    "currentPassword"
  ],
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 254
    },
    "currentPassword": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "writeOnly": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 202

Change accepted; verification is required

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/passwordReplace the signed-in user's password and revoke all active browser sessions

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
currentPasswordYesstring · minLength: 1; maxLength: 128
passwordYesstring · minLength: 12; maxLength: 128
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "currentPassword",
    "password"
  ],
  "properties": {
    "currentPassword": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "writeOnly": true
    },
    "password": {
      "type": "string",
      "minLength": 12,
      "maxLength": 128,
      "writeOnly": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Password changed; all active browser sessions and action tokens revoked

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/auditList the organization's latest account and key changes

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/audit' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Latest account audit entries

Content type: application/json

AuditResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AuditResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/api-keysCreate an API key whose token is returned exactly once

API key or signed-in session

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

ApiKeyCreateRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
userIdNostring · format: "uuid"
scopesNoarray · minItems: 1
expiresInDaysNointeger | null · minimum: 1; maximum: 365; default: nullOmit or set null for no expiration.
rotateAfterDaysNointeger | null · minimum: 1; maximum: 365; default: nullOptional rotation reminder; cannot exceed expiresInDays when expiration is set.
Request schema
{
  "$ref": "#/components/schemas/ApiKeyCreateRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/api-keys' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Key created; securely store the one-time token

Content type: application/json

ApiKeyIssueResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ApiKeyIssueResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/api-keys/{key_id}/rotateAtomically revoke an active key and issue its replacement

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
key_idpathYesstring · format: "uuid"
key_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/api-keys/YOUR_KEY_ID/rotate' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 201

Replacement token returned exactly once

Content type: application/json

ApiKeyIssueResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ApiKeyIssueResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/api-keys/{key_id}Revoke an active API key other than the key authorizing this request

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
key_idpathYesstring · format: "uuid"
key_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request DELETE 'https://api.filingsift.com/api/v1/account/api-keys/YOUR_KEY_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Redacted revoked-key metadata

Content type: application/json

ApiKeyResponse

FieldRequiredType / constraintsDescription
dataYesobjectRedacted key metadata. Raw tokens and stored SHA-256 hashes are never present.
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ApiKeyResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/companiesAdd a ticker to the organization's bounded company set

API key or signed-in session

All plans return indexed_existing immediately for an existing non-illustrative filing belonging to the resolved SEC issuer. Missing coverage queues a shared asynchronous request for up to 25 supported filings and two SEC historical-submission files within plan lookback and pending/company limits. Unknown SEC tickers return 422; no complete historical coverage or completion time is guaranteed.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
tickerYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
Request schema
{
  "type": "object",
  "required": [
    "ticker"
  ],
  "properties": {
    "ticker": {
      "type": "string",
      "pattern": "^[A-Za-z0-9.-]{1,16}$"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/companies' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Company entitlement added; Professional and Team use existing indexed coverage while Free and Builder may queue bounded onboarding

Content type: application/json

TickerResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/TickerResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Syntactically valid ticker is not present in the current SEC issuer directory

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/companies/{ticker}/onboardingRetry bounded SEC onboarding for a configured ticker

API key or signed-in session

All plans may request bounded asynchronous retrieval for an already configured company. Repeated active requests share the same issuer queue. Company authorization, pending-request limits and processing lookback remain enforced.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/companies/YOUR_TICKER/onboarding' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 202

Onboarding request accepted

Content type: application/json

TickerResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/TickerResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Syntactically valid ticker is not present in the current SEC issuer directory

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/companies/{ticker}Remove a ticker from the organization's company set

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request DELETE 'https://api.filingsift.com/api/v1/account/companies/YOUR_TICKER' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 204

Company entitlement removed

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/members/{user_id}Update a member role while preserving at least one owner

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
user_idpathYesstring · format: "uuid"
user_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
roleYesstring · one of: "owner", "admin", "member", "viewer"
Request schema
{
  "type": "object",
  "required": [
    "role"
  ],
  "properties": {
    "role": {
      "$ref": "#/components/schemas/MembershipRole"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request PATCH 'https://api.filingsift.com/api/v1/account/members/YOUR_USER_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Updated membership

Content type: application/json

MembershipResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MembershipResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/members/{user_id}Remove a member and revoke all of that member's active keys

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
user_idpathYesstring · format: "uuid"
user_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request DELETE 'https://api.filingsift.com/api/v1/account/members/YOUR_USER_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 204

Member removed and keys revoked

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Analyst (27)
GET /analyst/vocabularyList analyst export metrics, formats, and bounds

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/analyst/vocabulary'

Responses

HTTP 200

Analyst export vocabulary

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

POST /analyst/tables/financingMerge bounded debt, liquidity, maturity, lifecycle, covenant, default, and comparable-table evidence

API key or signed-in session

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

AnalystExportRequest

FieldRequiredType / constraintsDescription
tickersYesarray · minItems: 1; maxItems: 20
periodsNointeger · minimum: 1; maximum: 20; default: 8
metricsNoarray · minItems: 1
Request schema
{
  "$ref": "#/components/schemas/AnalystExportRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analyst/tables/financing' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked analyst tables with explicit unavailable cells

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /analyst/exports/xlsxDownload a deterministic Excel workbook with source-linked filing-derived cells

API key or signed-in session

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

AnalystExportRequest

FieldRequiredType / constraintsDescription
tickersYesarray · minItems: 1; maxItems: 20
periodsNointeger · minimum: 1; maximum: 20; default: 8
metricsNoarray · minItems: 1
Request schema
{
  "$ref": "#/components/schemas/AnalystExportRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analyst/exports/xlsx' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

XLSX workbook with debt/liquidity, maturity, lifecycle, covenant, default, comparable-table, and manifest sheets

Response headers: X-Export-Sha256, X-Manifest-Sha256.

Content type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Response schema
{
  "type": "string",
  "format": "binary"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /analyst/exports/xlsx/manifestReproduce the workbook and dataset checksums for an analyst export request

API key or signed-in session

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

AnalystExportRequest

FieldRequiredType / constraintsDescription
tickersYesarray · minItems: 1; maxItems: 20
periodsNointeger · minimum: 1; maximum: 20; default: 8
metricsNoarray · minItems: 1
Request schema
{
  "$ref": "#/components/schemas/AnalystExportRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analyst/exports/xlsx/manifest' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Workbook and dataset SHA-256 manifest

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /analyst/modeling/vocabularyList versioned formula, concept, template, and request bounds

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/analyst/modeling/vocabulary'

Responses

HTTP 200

Analyst modeling vocabulary

Link to this operation · Download the contract

POST /analyst/formulas/resolveResolve bounded VALUE, EVIDENCE, and TABLE formulas with exact XBRL provenance

API key or signed-in session

Required scopes: exports:read. Account, role and source checks still apply.

Deployed migration 027 route requiring exports:read, billing access and issuer and indexed-history access; accepts at most 500 uniquely identified formulas expanding to at most 1000 data cells. Comparability-aware comparability review makes latest select a period end rather than a filing vintage. Competing scope, value or unresolved metadata returns null with alternatives/review; a singleton with blocking metadata is unavailable. Available scalars disclose only_matching_observation or equivalent_observations_with_representative_source selection. Capped candidate scans and unsafe numeric conversions do not select a value.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

Request schema
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/AnalystModelDefinition"
    },
    {
      "$ref": "#/components/schemas/AnalystScalarFormula"
    },
    {
      "$ref": "#/components/schemas/AnalystTableFormula"
    }
  ]
}

Request example:

{
  "formulas": [
    {
      "id": "cash",
      "function": "VALUE",
      "ticker": "AAPL",
      "concept": "cash_and_cash_equivalents",
      "period": "latest"
    }
  ]
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analyst/formulas/resolve' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Content-addressed model snapshot

HTTP 400

Invalid formula

HTTP 403

Issuer or history is not entitled

Link to this operation · Download the contract

POST /analyst/templates/renderRender a historical-statement or comparable-company matrix

API key or signed-in session

Required scopes: exports:read. Account, role and source checks still apply.

Deployed migration 027 route requiring exports:read, billing access, and issuer and indexed-history access. TABLE cells use the same comparability-aware scalar policy as formula resolution; available cells retain source context and verification metadata, while unresolved alternatives remain null with review details.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
idNostring · minLength: 1; maxLength: 120
functionNostring · const: "TABLE"
templateNostring · default: "historical_statements"; one of: "historical_statements", "comparable_companies"
tickerNostring
tickersNoarray · minItems: 1; maxItems: 25
conceptsNoarray · minItems: 1; maxItems: 25
periodNostring
periodsNoarray · minItems: 1; maxItems: 40
Request schema
{
  "type": "object",
  "required": [],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "function": {
      "type": "string",
      "const": "TABLE"
    },
    "template": {
      "type": "string",
      "enum": [
        "historical_statements",
        "comparable_companies"
      ],
      "default": "historical_statements"
    },
    "ticker": {
      "type": "string"
    },
    "tickers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 25
    },
    "concepts": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 25
    },
    "period": {
      "type": "string"
    },
    "periods": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 40
    }
  },
  "anyOf": [
    {
      "required": [
        "ticker"
      ]
    },
    {
      "required": [
        "tickers"
      ]
    }
  ]
}

Request example:

{
  "template": "historical_statements",
  "tickers": [
    "AAPL"
  ],
  "concepts": [
    "cash_and_cash_equivalents"
  ],
  "periods": [
    "latest"
  ]
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analyst/templates/render' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked table snapshot

Link to this operation · Download the contract

GET /account/analyst/modelsList user-scoped saved models, latest refresh state, and schedules

Signed-in website session · API keys are not accepted

Requires a browser session, account:read, exports:read, and billing access. API keys are rejected.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved analyst models

Link to this operation · Download the contract

POST /account/analyst/modelsCreate a bounded saved analyst model

Signed-in website session · API keys are not accepted

Requires a browser session, account:read, exports:read, and billing access. API keys are rejected.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

Request schema
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "name",
        "definition"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 120
        },
        "definition": {
          "$ref": "#/components/schemas/AnalystModelDefinition"
        }
      }
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/AnalystModelDefinition"
        },
        {
          "type": "object",
          "required": [
            "name"
          ],
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 120
            }
          }
        }
      ]
    }
  ]
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Model created

Link to this operation · Download the contract

POST /account/analyst/models/{id}/refreshRefresh a saved model and persist a deterministic cell-level change manifest

Signed-in website session · API keys are not accepted

Requires the owner's browser session, account:read, exports:read, and billing access; issuer and indexed-history access are rechecked for current and prior provenance. New v2 manifests retain complete before/after cells, formulas and observed differences without causal inference. Appends compare the latest saved snapshot atomically and never silently evict history. API keys are rejected. The deployed route reuses migration 027.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Content-addressed snapshot and analyst-model-change-manifest-v2

HTTP 403

Current or retained historical source access cannot be established

HTTP 409

model_refresh_base_changed

HTTP 413

model_refresh_too_large when combined snapshot and manifest exceed 1500000 compact JSON bytes

Link to this operation · Download the contract

GET /account/analyst/models/{id}/refreshesList bounded refresh snapshot and manifest history

Signed-in website session · API keys are not accepted

Requires the owner's browser session, account:read, exports:read, billing access, and current issuer and indexed-history access to the entire saved provenance chain including old sources and alternatives. Returns at most 100 stored refreshes without rebuilding. Missing legacy metadata fails closed. Global response-size limits apply. API keys are rejected.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Refresh history

Link to this operation · Download the contract

GET /account/analyst/models/{id}/refresh-reviewReview stored before/after model cells and observed correction history

Signed-in website session · API keys are not accepted

Deployed route reusing migration 027. Requires the owner's browser session, account:read, exports:read, billing, and current issuer and indexed-history access to the entire saved history and retained before/after provenance, before cell filtering. Selects newest matching refreshes and returns them chronologically. Does not read current filings or regenerate explanations. Legacy explanations are unavailable; insufficient saved scope/date metadata refuses the whole read. Changes describe observations, not issuer restatements or causal conclusions. Manifest counts remain complete even for a cell-filtered review. Only limit and cell_id are accepted.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"
limitqueryNointeger · minimum: 1; maximum: 100; default: 20
cell_idqueryNostring · minLength: 1; maxLength: 512Exact model data-cell ID

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved explainable refresh review

Content type: application/json

ModelRefreshReviewResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/ModelRefreshReviewResponse"
}

HTTP 400

Unsupported

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

HTTP 403

Session/scope or whole saved issuer and indexed-history access cannot be established; no trimming or current-data fallback

HTTP 404

Model not found for this user and organization

HTTP 409

model_refresh_snapshot_integrity_failed or model_refresh_manifest_integrity_failed; no current-data reconstruction

HTTP 413

Global response-size limit exceeded; request fewer refreshes or an exact cell filter

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PUT /account/analyst/models/{id}/scheduleConfigure an hourly, daily, or weekly entitlement-checked model refresh

Signed-in website session · API keys are not accepted

Requires a browser session, account:read, and workspace:write. The worker rechecks current billing and issuer and indexed-history access when executing a refresh.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
frequencyNostring · default: "daily"; one of: "hourly", "daily", "weekly"
enabledNoboolean · default: true
destinationIdsNoarray · minItems: 0; maxItems: 10
Request schema
{
  "type": "object",
  "properties": {
    "frequency": {
      "type": "string",
      "enum": [
        "hourly",
        "daily",
        "weekly"
      ],
      "default": "daily"
    },
    "enabled": {
      "type": "boolean",
      "default": true
    },
    "destinationIds": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "minItems": 0,
      "maxItems": 10
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Model schedule

Link to this operation · Download the contract

POST /account/analyst/snapshots/previewPreview a bounded immutable research artifact without saving

Signed-in website session · API keys are not accepted

Deployed migration 029 workflow with bounded base preview/save/reopen and access-change acceptance. Requires a browser session, account:read, exports:read, billing access, and current issuer and indexed-history access. API keys and all query parameters are rejected. No arbitrary backdated or search/XBRL replay is supported. Captures at most 40 filings and 400 documents; selected input JSON is capped at 12000000 bytes and the artifact at 1500000 bytes. Unsupported nested result fields and incomplete/corrupt included evidence refuse capture without silent dropping. Filing-timeline and broader customer-workflow acceptance remain separate.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

Request schema
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/ResearchSnapshotDefinition"
    },
    {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "definition"
      ],
      "properties": {
        "definition": {
          "$ref": "#/components/schemas/ResearchSnapshotDefinition"
        },
        "sourceReport": {
          "type": "object",
          "additionalProperties": true,
          "description": "Signed source report required for source_research_report"
        }
      }
    }
  ]
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Unsaved materialized result with source manifest and integrity hashes

Response headers: Cache-Control.

Content type: application/json

ResearchSnapshotPreviewResponse

FieldRequiredType / constraintsDescription
dataYesoneOf
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ResearchSnapshotPreviewResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Current billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Duplicate accession sources must be reconciled before capture

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Selected inputs or resulting artifact exceed capture bounds

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid source identity/date/SEC URL or JSON input; research_snapshot_unsafe_evidence for unsupported result fields or incomplete/corrupt included evidence

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

research_snapshot_sources_unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/analyst/snapshotsList the owner's private snapshot summaries and organization cap usage

Signed-in website session · API keys are not accepted

Requires a browser session, account:read, exports:read, and billing access. Does not recheck issuer and indexed-history access for summary metadata; full-result reopening does. Returns no other user's artifact metadata. No query parameters or pagination; organization storage is capped at 100 artifacts.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Owner summaries with organization-wide count

Response headers: Cache-Control.

Content type: application/json

ResearchSnapshotListResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ResearchSnapshotListResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Current billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/analyst/snapshotsRebuild a reviewed preview and save an independent immutable artifact

Signed-in website session · API keys are not accepted

Requires a browser session, account:read, exports:read, billing access, and current issuer and indexed-history access. Rebuilds and checks expectedContentSha256 before insertion; changed sources, analysis, or scope return 409 rather than silently replacing reviewed content. Included evidence/result safety and the configured successful-response size budget are checked before persistence. Duplicate names are allowed. No UPDATE/upsert, automatic expiry, or query parameters.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
definitionYesobject
sourceReportNoobjectSigned source report required for source_research_report; verified without refetching providers
expectedContentSha256Yesstring · pattern: "^[a-f0-9]{64}$"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "name",
    "definition",
    "expectedContentSha256"
  ],
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "definition": {
      "$ref": "#/components/schemas/ResearchSnapshotDefinition"
    },
    "sourceReport": {
      "type": "object",
      "additionalProperties": true,
      "description": "Signed source report required for source_research_report; verified without refetching providers"
    },
    "expectedContentSha256": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Immutable artifact created

Response headers: Cache-Control.

Content type: application/json

ResearchSnapshotSavedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ResearchSnapshotSavedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Current billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

research_snapshot_preview_changed

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Selected inputs or artifact exceed capture bounds

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid source metadata or JSON input; research_snapshot_unsafe_evidence for unsupported result fields or incomplete/corrupt included evidence

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

research_snapshot_sources_unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/analyst/snapshots/{id}Verify and reopen an exact private saved materialized result

Signed-in website session · API keys are not accepted

Requires the owner's browser session, account:read, exports:read, billing access, current issuer access, and valid captured source dates under the current indexed-history access policy. An out-of-scope source denies the entire artifact; no partial rewrite or live rebuild is performed. Reopening verifies saved hashes and does not read current filing records or rerun parsers/builders. SEC/reader links still open live resources. No query parameters.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Exact saved artifact plus its saved ID

Response headers: Cache-Control.

Content type: application/json

ResearchSnapshotSavedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ResearchSnapshotSavedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Current billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

research_snapshot_not_found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

research_snapshot_schema_unsupported or research_snapshot_integrity_failed; saved content is not regenerated

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/analyst/snapshots/{id}Explicitly delete the owner's private saved artifact

Signed-in website session · API keys are not accepted

Requires the owner's valid browser session and account:read, but not current exports scope, billing, issuer, or history entitlement, so cleanup remains possible after access loss. API keys and all query parameters are rejected. Deletes this artifact, not source filing records or other snapshots.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Saved artifact deleted; no response body

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

research_snapshot_not_found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/analyst/workspaceList personal research folders, saved views, and citation-bound memo drafts

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Personal analyst workspace

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/analyst/foldersCreate a capped personal research folder with tags and bounded items

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
nameYesstring · maxLength: 120
descriptionNostring · maxLength: 1000
tagsNoarray · maxItems: 20
itemsNoarray · maxItems: 100
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 120
    },
    "description": {
      "type": "string",
      "maxLength": 1000
    },
    "tags": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string"
      }
    },
    "items": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object"
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Research folder created

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/analyst/viewsSave an allowlisted FilingSift dashboard route and bounded configuration

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SavedDashboardViewRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
routeYesstring · maxLength: 500Internal /#/search, intelligence, reader, analyst or monitoring route.
configurationNoobjectAt most 20 KB of JSON.
tagsNoarray · minItems: 0; maxItems: 20
Request schema
{
  "$ref": "#/components/schemas/SavedDashboardViewRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Dashboard view saved

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/analyst/memosCreate a memo draft from mandatory citations re-resolved against indexed evidence

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
titleYesstring · maxLength: 160
analystNotesNostring · maxLength: 10000
reviewStateNostring · one of: "draft", "in_review", "reviewed"
citationsYesarray · minItems: 1; maxItems: 50
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "title",
    "citations"
  ],
  "properties": {
    "title": {
      "type": "string",
      "maxLength": 160
    },
    "analystNotes": {
      "type": "string",
      "maxLength": 10000
    },
    "reviewState": {
      "type": "string",
      "enum": [
        "draft",
        "in_review",
        "reviewed"
      ]
    },
    "citations": {
      "type": "array",
      "minItems": 1,
      "maxItems": 50,
      "items": {
        "type": "object",
        "required": [
          "accession",
          "evidenceSha256"
        ],
        "properties": {
          "accession": {
            "type": "string"
          },
          "evidenceSha256": {
            "type": "string"
          }
        }
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Citation-bound memo draft

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/analyst/folders/{id}Update a user-owned research folder

Signed-in website session · API keys are not accepted

Browser session required.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
nameNostring · maxLength: 120
descriptionNostring · maxLength: 1000
tagsNoarray · maxItems: 20
itemsNoarray · maxItems: 100
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 120
    },
    "description": {
      "type": "string",
      "maxLength": 1000
    },
    "tags": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string"
      }
    },
    "items": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object"
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Research folder updated

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/analyst/folders/{id}Delete a user-owned research folder

Signed-in website session · API keys are not accepted

Browser session required.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Research folder deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/analyst/views/{id}Delete a user-owned saved dashboard view

Signed-in website session · API keys are not accepted

Browser session required.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Dashboard view deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/analyst/memos/{id}Update a user-owned memo draft or review state

Signed-in website session · API keys are not accepted

Browser session required. Supplied citations are re-resolved against indexed evidence.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
titleNostring · maxLength: 160
analystNotesNostring · maxLength: 10000
reviewStateNostring · one of: "draft", "in_review", "reviewed"
citationsNoarray · minItems: 1; maxItems: 50
Request schema
{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "maxLength": 160
    },
    "analystNotes": {
      "type": "string",
      "maxLength": 10000
    },
    "reviewState": {
      "type": "string",
      "enum": [
        "draft",
        "in_review",
        "reviewed"
      ]
    },
    "citations": {
      "type": "array",
      "minItems": 1,
      "maxItems": 50,
      "items": {
        "type": "object",
        "required": [
          "accession",
          "evidenceSha256"
        ],
        "properties": {
          "accession": {
            "type": "string"
          },
          "evidenceSha256": {
            "type": "string"
          }
        }
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Citation-bound memo updated

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/analyst/memos/{id}Delete a user-owned memo draft

Signed-in website session · API keys are not accepted

Browser session required.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Memo draft deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Bank Research (5)
GET /reference/retained-history/{source}Retained FDIC, EIA or CFTC windows and collection status

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
sourcepathYesstring · one of: "fdic", "eia", "cftc"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/retained-history/YOUR_SOURCE' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Authenticated collection status; no-store

Content type: application/json

FieldRequiredType / constraintsDescription
dataNoobject
Response schema
{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "source": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "updatedAt": {
          "type": "string",
          "format": "date-time"
        },
        "cftcFamilies": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "metrics": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string"
                    },
                    "label": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "dataset": {
                "type": "string"
              },
              "completedWindows": {
                "type": "integer"
              },
              "totalWindows": {
                "type": "integer"
              },
              "records": {
                "type": "integer"
              },
              "windows": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/RetainedHistoryWindow"
                }
              }
            }
          }
        }
      }
    }
  }
}

HTTP 401

Authentication required

HTTP 402

Billing entitlement required

HTTP 403

Read scope required

HTTP 429

Rate limited

HTTP 503

Archive or source admission unavailable

Link to this operation · Download the contract

POST /reference/retained-history/querySearch and compare retained bank, energy or CFTC observations

API key or signed-in session

Requires intelligence:read, entitled billing and reference-history access. Completed windows only; at most 500 rows and eight object reads per page. Repeat every filter with nextCursor as cursor, including after an empty page. Cursors pin the original checkpoint. Restart to include newer downloads. Numeric values are exact decimal strings or null, never missing-as-zero. These are retrieved revisions, not publication-time vintages. CFTC retained queries accept longer spans than live-provider queries; select one family, one metric and up to four exact market codes. Net is long minus short. Contract units and families differ; these observations are not market prices.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

RetainedHistoryQuery

FieldRequiredType / constraintsDescription
sourceYesstring · one of: "fdic", "eia", "cftc"
datasetYesstring · one of: "financials", "sod", "retail_sales", "generation_mix", "petroleum_stocks", "natural_gas_storage", "legacy_futures", "legacy_combined", "disaggregated_futures", "disaggregated_combined", "tff_futures", "tff_combined", "supplemental"
metricYesstringFDIC catalog code or DEPSUMBR; EIA price/revenue/sales
startDateYesstring · format: "date"
endDateYesstring · format: "date"
marketCodesNoarray · minItems: 1; maxItems: 4Required for CFTC only; discover codes through the live CFTC market search
certificatesNoarray · maxItems: 25
nameNostring · maxLength: 100FDIC name substring
stateNostringEIA area or FDIC branch state; no financial-state reconstruction
sectorNostringRequired for monthly EIA datasets
seriesNostringRequired for weekly EIA datasets
fuelNostringOptional generation fuel code
minNostringInclusive exact decimal bound; excludes missing cells
maxNostringInclusive exact decimal bound; excludes missing cells
cursorNostring · maxLength: 1500
Request schema
{
  "$ref": "#/components/schemas/RetainedHistoryQuery"
}

Request example:

{
  "source": "eia",
  "dataset": "petroleum_stocks",
  "metric": "value",
  "series": "WCESTUS1",
  "startDate": "1982-01-01",
  "endDate": "2026-10-23"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reference/retained-history/query' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

A bounded page with explicit incomplete windows and provenance

Content type: application/json

FieldRequiredType / constraintsDescription
dataNoobject
Response schema
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/RetainedHistoryResult"
    }
  }
}

HTTP 400

Invalid filters or mismatched cursor

HTTP 401

Authentication required or account changed

HTTP 402

Billing entitlement required

HTTP 403

Missing read scope or history outside plan

HTTP 429

Rate limited or another archive read is running

HTTP 503

Archive unavailable

Link to this operation · Download the contract

GET /reference/fdic/banksBank screener definitions and availability

API key or signed-in session

Requires intelligence:read and entitled billing; browser session or API key. Reference-history access applies. No query parameters. Amounts are USD thousands; percent values use 1 for 1%. Net income is year-to-date. Records are source-reported, not investment or bank-safety ratings. New measures are fetched on demand, not a completed stored-history expansion. Screen pages use ascending certificate order; repeat the exact filters and page size with nextCursor. Restart after 409 fdic_screen_changed. Exports must identify their loaded-page scope.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/fdic/banks' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked result; Cache-Control: no-store

Content type: application/json

BankScreenCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankScreenCatalogResponse"
}

HTTP 400

Invalid filters or cursor

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

No reporting quarter available

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Provider index changed; restart pagination

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Request limit reached

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 502

Provider response failed scope or integrity checks

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source not admitted or temporarily unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reference/fdic/banks/screenScreen reported FDIC bank financials

API key or signed-in session

Requires intelligence:read and entitled billing; browser session or API key. Reference-history access applies. No query parameters. Amounts are USD thousands; percent values use 1 for 1%. Net income is year-to-date. Records are source-reported, not investment or bank-safety ratings. New measures are fetched on demand, not a completed stored-history expansion. Screen pages use ascending certificate order; repeat the exact filters and page size with nextCursor. Restart after 409 fdic_screen_changed. Exports must identify their loaded-page scope.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

BankScreenInput

FieldRequiredType / constraintsDescription
reportDateNooneOf · default: "latest"
nameNostring · maxLength: 120
stateNostring · pattern: "^([A-Z]{2})?$"
activeNoschema · default: "all"; one of: "all", "active", "inactive"
rangesNoarray · maxItems: 6
limitNointeger · minimum: 1; maximum: 50; default: 50
cursorNostring | null
Request schema
{
  "$ref": "#/components/schemas/BankScreenInput"
}

Request example:

{
  "reportDate": "latest",
  "ranges": [
    {
      "metric": "ASSET",
      "min": "1000000"
    },
    {
      "metric": "NCLNLSR",
      "min": "1"
    }
  ],
  "limit": 50
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reference/fdic/banks/screen' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked result; Cache-Control: no-store

Content type: application/json

BankScreenResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankScreenResponse"
}

HTTP 400

Invalid filters or cursor

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

No reporting quarter available

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Provider index changed; restart pagination

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Request limit reached

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 502

Provider response failed scope or integrity checks

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source not admitted or temporarily unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reference/fdic/banks/compareCompare up to 25 banks across eight quarters

API key or signed-in session

Requires intelligence:read and entitled billing; browser session or API key. Reference-history access applies. No query parameters. Amounts are USD thousands; percent values use 1 for 1%. Net income is year-to-date. Records are source-reported, not investment or bank-safety ratings. New measures are fetched on demand, not a completed stored-history expansion. Screen pages use ascending certificate order; repeat the exact filters and page size with nextCursor. Restart after 409 fdic_screen_changed. Exports must identify their loaded-page scope.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

BankPeerScreenInput

FieldRequiredType / constraintsDescription
reportDateNooneOf · default: "latest"
certsYesarray · minItems: 1; maxItems: 25
quartersNointeger · minimum: 1; maximum: 8; default: 1
Request schema
{
  "$ref": "#/components/schemas/BankPeerScreenInput"
}

Request example:

{
  "reportDate": "2026-06-30",
  "certs": [
    "628",
    "3510",
    "7213",
    "3511",
    "6548",
    "7211"
  ],
  "quarters": 4
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reference/fdic/banks/compare' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked result; Cache-Control: no-store

Content type: application/json

BankScreenResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankScreenResponse"
}

HTTP 400

Invalid filters or cursor

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

No reporting quarter available

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Provider index changed; restart pagination

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Request limit reached

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 502

Provider response failed scope or integrity checks

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source not admitted or temporarily unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Billing (7)
GET /billing/catalogGet plans and self-service billing availability

No API key required; supplied credentials can add restrictions

Returns the runtime monthly price and packaging catalog. All self-service plans share the published capability groups and differ by server-enforced capacity limits. providerEnabled and pricingStatus reflect configured provider and commercial activation; each plan has purchaseAvailable. All self-service plans include bounded asynchronous company retrieval; backfillReviewRequired=false applies to standard retrieval of up to 25 supported filings. Complete or custom historical backfills still require separate review. Consumers must read these flags rather than assume checkout is always enabled or disabled. seatBillingEnabled separately reports configured additional-seat billing.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/billing/catalog'

Responses

HTTP 200

Billing catalog

Content type: application/json

BillingCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BillingCatalogResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/billingGet entitlement, runtime catalog, subscription state, and invoices

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/billing' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Current billing state

Content type: application/json

AccountBillingResponse

FieldRequiredType / constraintsDescription
dataYesschema
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AccountBillingResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/billing/invoicesList bounded provider-hosted invoice and receipt metadata

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/billing/invoices' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Invoice history

Content type: application/json

InvoiceListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/InvoiceListResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/billing/checkoutCreate hosted checkout for an available paid plan

API key or signed-in session

Builder, Professional and Team support checkout when commercial billing is active. Professional and Team buy existing indexed coverage within plan limits; additional company coverage and historical backfills require separate review.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
planKeyYesstring · one of: "builder", "professional", "team"
Request schema
{
  "type": "object",
  "required": [
    "planKey"
  ],
  "properties": {
    "planKey": {
      "type": "string",
      "enum": [
        "builder",
        "professional",
        "team"
      ]
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/billing/checkout' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Provider-hosted checkout session

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/billing/seatsUpdate seats within the plan/member bounds with immediate Stripe proration

API key or signed-in session

Available only when commercial billing and a separate additional-seat Price are configured. Check catalog.seatBillingEnabled; the base flat-plan subscription item stays at quantity one.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
quantityYesinteger · minimum: 1
Request schema
{
  "type": "object",
  "required": [
    "quantity"
  ],
  "properties": {
    "quantity": {
      "type": "integer",
      "minimum": 1
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request PATCH 'https://api.filingsift.com/api/v1/account/billing/seats' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 202

Prorated seat update accepted

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/billing/portalCreate a provider-hosted customer portal session

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/billing/portal' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 201

Provider-hosted portal session

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/billing/cancelRequest subscription cancellation now or at period end

API key or signed-in session

No path or query parameters are specified for this operation.

Request body

Content type: application/json

FieldRequiredType / constraintsDescription
atPeriodEndNoboolean · default: true
Request schema
{
  "type": "object",
  "properties": {
    "atPeriodEnd": {
      "type": "boolean",
      "default": true
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/billing/cancel' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Cancellation request accepted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Contract (6)
GET /metaGet the current API and schema versions

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/meta'

Responses

HTTP 200

Current contract metadata and capability gates

Response headers: X-API-Version, ETag.

Content type: application/json

MetadataResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MetadataResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /deprecation-policyGet the v1 compatibility and retirement policy

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/deprecation-policy'

Responses

HTTP 200

Active version policy

Content type: application/json

DeprecationPolicyResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/DeprecationPolicyResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /statusRead public service and ingestion status

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/status'

Responses

HTTP 200

Public component status

Link to this operation · Download the contract

GET /changelogRead dated public product changes

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/changelog'

Responses

HTTP 200

Public changelog

Link to this operation · Download the contract

GET /status/historyRead observed API availability and latency plus current ingestion delay

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
daysqueryNointeger · minimum: 1; maximum: 90; default: 30

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/status/history'

Responses

HTTP 200

Customer-data-free operational history; observed measurements are not an SLA

Link to this operation · Download the contract

GET /incidentsRead the public incident ledger

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/incidents'

Responses

HTTP 200

Public incident ledger

Link to this operation · Download the contract

Corporate Events (5)
GET /corporate-events/vocabularyList corporate-event domains and issuer-history views

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/corporate-events/vocabulary'

Responses

HTTP 200

Supported domains

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

POST /corporate-events/queryQuery source-linked ownership, governance, compensation, offering, and transaction observations

No API key required; supplied credentials can add restrictions

Public query with optional credentials; supplied credentials require search:read and billing access. No watchlist or plan-history filter is applied. Follow request-bound data.pagination.nextCursor; candidate observations are source-linked and ready for analyst review.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
queryNostring · maxLength: 300
filtersNoobject
cursorNostring
limitNointeger · minimum: 1; maximum: 100; default: 50
Request schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 300
    },
    "filters": {
      "type": "object",
      "additionalProperties": true
    },
    "cursor": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 50
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/corporate-events/query' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Request-bound cursor page with exact filing provenance

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /corporate-events/coverageGet extraction counts, freshest dates, and known gaps by form and issuer

No API key required; supplied credentials can add restrictions

Public event counts by domain and filing/extracted-filing/event/known-gap counts by form and issuer. This is not a reviewed accuracy rate. Optional credentials require search:read and billing access.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/corporate-events/coverage'

Responses

HTTP 200

Domain

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

GET /corporate-events/issuers/{ticker}/{view}Get a source-linked issuer ownership, compensation, governance, capital-markets, or transaction history

No API key required; supplied credentials can add restrictions

Public history with a default of 50 and maximum of 100 observations per page. Optional credentials require search:read and billing access; no account-history or watchlist restriction is applied.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring
viewpathYesstring · one of: "insider-transactions", "beneficial-ownership", "institutional-holdings", "compensation", "governance", "capital-markets", "transactions"
queryqueryNostring · maxLength: 300
cursorqueryNostring
limitqueryNointeger · minimum: 1; maximum: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/corporate-events/issuers/YOUR_TICKER/YOUR_VIEW'

Responses

HTTP 200

Cursor-paginated issuer history with exact source evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /corporate-events/exportExport one source-linked cursor chunk as CSV or NDJSON

No API key required; supplied credentials can add restrictions

Same optional authentication as corporate-event queries. Accepts query, filters, cursor, limit, and format in a JSON body; exports at most 100 observations and preserves evidence. Follow X-Next-Cursor while X-Export-Truncated is true.

No path or query parameters are specified for this operation.

Request body

Content type: application/json

FieldRequiredType / constraintsDescription
queryNostring · maxLength: 300
filtersNoobject
cursorNostring
limitNointeger · minimum: 1; maximum: 100; default: 100
formatNostring · default: "csv"; one of: "csv", "ndjson"
Request schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 300
    },
    "filters": {
      "type": "object",
      "additionalProperties": true
    },
    "cursor": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 100
    },
    "format": {
      "type": "string",
      "enum": [
        "csv",
        "ndjson"
      ],
      "default": "csv"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/corporate-events/export' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Export with row count

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Developer (15)
GET /developer/sandboxRead clearly labeled illustrative filing, stream, and archive examples

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/developer/sandbox'

Responses

HTTP 200

Illustrative sandbox data that cannot be mistaken for an SEC filing

Link to this operation · Download the contract

GET /filings/streamStream newly indexed entitled filings with reconnectable SSE cursors

API key or signed-in session

Deployed migration 028 route. Requires explicit stream:read, current billing access, and the organization's selected issuers and indexed-history access. Persist eventId for reconnects through cursor or Last-Event-ID; cursor takes precedence. follow=false emits at most 100 available events and closes. Following streams send 15-second heartbeat comments. Consumers are responsible for reconnection and deduplication.

Parameters

NameLocationRequiredType / constraintsDescription
cursorqueryNostring
cikqueryNostring
tickerqueryNostring
formqueryNostring
followqueryNoboolean · default: true
Last-Event-IDheaderNostring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/stream' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Filing event stream

Content type: text/event-stream

Response schema
{
  "type": "string"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /filings/{accession}/parsed.htmlRender safe HTML from parsed sections and tables without serving raw SEC HTML

API key or signed-in session

Deployed route requiring filings:read, billing access, and valid indexed-history access. The current router does not apply the stream's selected-company filter. The configured response byte limit applies; this is rendered parsed output, not the original SEC document.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION/parsed.html' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Parsed HTML

Content type: text/html

Response schema
{
  "type": "string"
}

Link to this operation · Download the contract

GET /filings/{accession}/parsed.txtRender parsed filing and exhibit text with SEC source headers

API key or signed-in session

Deployed route requiring filings:read, billing access, and valid indexed-history access. No selected-company filter is applied by the current router. Text is limited to stored parsed sections and selected indexed exhibits and is subject to the configured response byte limit.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION/parsed.txt' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Parsed text

Content type: text/plain

Response schema
{
  "type": "string"
}

Link to this operation · Download the contract

GET /filings/{accession}/tables.jsonRead source-linked parsed filing and exhibit tables

API key or signed-in session

Deployed route requiring filings:read, billing access, and valid indexed-history access. No selected-company filter is applied by the current router. Returns stored parsed tables rather than every table or attachment in the SEC filing; the JSON response size limit applies.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION/tables.json' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Parsed table JSON

Link to this operation · Download the contract

GET /filings/{accession}/xbrl.jsonRead raw XBRL facts, contexts, networks, mappings, and explicit conflicts

API key or signed-in session

Deployed route requiring filings:read, billing access, and valid indexed-history access; no selected-company filter is applied by the current router. Reads at most 5000 facts and 500 conflicts without continuation. Use /xbrl/facts for paginated raw observations. Contexts are parsed representations retaining source context IDs, not original scenario XML.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION/xbrl.json' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked XBRL JSON

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /filings/{accession}/clean.pdfDownload a bounded clean evidence PDF with clickable SEC sources

API key or signed-in session

Deployed route requiring filings:read, billing access, and valid indexed-history access; no selected-company filter is applied by the current router. This is a source-linked evidence report, not a facsimile or complete reproduction of the SEC document. The configured response byte limit applies.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION/clean.pdf' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Clean evidence PDF

Content type: application/pdf

Response schema
{
  "type": "string",
  "format": "binary"
}

Link to this operation · Download the contract

GET /account/developerRead developer resources, caps, and benchmark gates

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/developer' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Developer-platform overview

Link to this operation · Download the contract

POST /account/service-accountsCreate an expiring least-privilege service credential

API key or signed-in session

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
nameYesstring · maxLength: 120
scopesYesarray · minItems: 1; maxItems: 16
expiresInDaysNointeger · minimum: 1; maximum: 365; default: 90
rotateAfterDaysNointeger · minimum: 1; maximum: 365; default: 60
Request schema
{
  "type": "object",
  "required": [
    "name",
    "scopes"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 120
    },
    "scopes": {
      "type": "array",
      "minItems": 1,
      "maxItems": 16,
      "items": {
        "type": "string"
      }
    },
    "expiresInDays": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "default": 90
    },
    "rotateAfterDays": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "default": 60
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/service-accounts' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Service account and one-time credential

Link to this operation · Download the contract

DELETE /account/service-accounts/{service_account_id}Disable the service account and revoke its keys atomically

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
service_account_idpathYesstring · format: "uuid"

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request DELETE 'https://api.filingsift.com/api/v1/account/service-accounts/YOUR_SERVICE_ACCOUNT_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Disabled service account

Link to this operation · Download the contract

GET /account/api-keys/{key_id}/telemetryRead bounded daily usage, latency, bytes, and errors

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
key_idpathYesstring · format: "uuid"
daysqueryNointeger · minimum: 1; maximum: 90; default: 30

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/api-keys/YOUR_KEY_ID/telemetry' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Per-key daily telemetry

Link to this operation · Download the contract

GET /account/batch-jobsList the organization batch queue

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/batch-jobs' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Batch jobs

Link to this operation · Download the contract

POST /account/batch-jobsQueue a bounded filing, exhibit, fact, or event archive

API key or signed-in session

Requires a credential and batch:write. Accepts 1–100 accessions; processing checks current billing plus the issuer/history grant captured at submission, and missing accessions fail the job. Expanded archive kinds are deployed migration 028 functionality. expiresAt is set to seven days after creation; both stores enforce it at read time independently of retention cleanup. Result payloads are capped at 25 MB and fact archives at 25000 output records. Fact selection exhausts 500-row XBRL cursor pages, checks retained package count/identity before completion, and falls back to deterministic source-bound filing facts only for absent/not-available legacy packages. Overflow or source change refuses the whole archive. This is a complete retained-fact export within the bounds, not every original SEC XBRL construct, a complete filing package, or a market archive.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
kindYesstring · one of: "filing_bundle", "filing_archive", "exhibit_archive", "fact_archive", "event_archive"
itemsYesarray · minItems: 1; maxItems: 100
Request schema
{
  "type": "object",
  "required": [
    "kind",
    "items"
  ],
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "filing_bundle",
        "filing_archive",
        "exhibit_archive",
        "fact_archive",
        "event_archive"
      ]
    },
    "items": {
      "type": "array",
      "minItems": 1,
      "maxItems": 100,
      "items": {
        "type": "string"
      }
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/batch-jobs' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 202

Batch job queued

Link to this operation · Download the contract

GET /account/batch-jobs/{job_id}Read batch queue, completion, failure, and manifest state

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
job_idpathYesstring · format: "uuid"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/batch-jobs/YOUR_JOB_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Batch job status

Link to this operation · Download the contract

GET /account/batch-jobs/{job_id}/downloadDownload a completed source-retaining archive and checksum manifest

API key or signed-in session

Requires a credential with batch:read, a job owned by the current organization, succeeded status, current billing, an unexpired seven-day timestamp, and every retained source within both the original and current issuer/history grants. Legacy jobs without an access receipt fail closed. Payload and manifest integrity are revalidated before download; non-succeeded jobs return 409. X-Manifest-Sha256 hashes the canonical manifest excluding its hash fields; X-Export-Sha256 hashes the canonical result, not the downloaded JSON bytes containing the manifest. This attachment uses no-store and bypasses the JSON middleware response cap; the generation payload cap is separate.

Parameters

NameLocationRequiredType / constraintsDescription
job_idpathYesstring · format: "uuid"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/batch-jobs/YOUR_JOB_ID/download' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

JSON archive with checksum manifest

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Economic Research (6)
GET /reference/economics/catalogeconomicCatalog

No API key required; supplied credentials can add restrictions

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/economics/catalog'

Responses

HTTP 200

Successful response

Content type: application/json

EconomicCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EconomicCatalogResponse"
}

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reference/economics/queryqueryEconomicSeries

API key or signed-in session

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

EconomicRequest

FieldRequiredType / constraintsDescription
startDateYesstring · format: "date"
endDateYesstring · format: "date"
frequencyYesschema · one of: "monthly", "quarterly", "annual"
aggregationYesschema · one of: "mean", "last"
linesYesarray · minItems: 1; maxItems: 8
calculationsNoarray · maxItems: 4
Request schema
{
  "$ref": "#/components/schemas/EconomicRequest"
}

Request example:

{
  "startDate": "2024-01-01",
  "endDate": "2025-12-31",
  "frequency": "quarterly",
  "aggregation": "mean",
  "lines": [
    {
      "id": "s1",
      "series": "bls:CUSR0000SA0",
      "transform": "yoy"
    },
    {
      "id": "s2",
      "series": "bea:A191RL",
      "transform": "level"
    }
  ],
  "calculations": []
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reference/economics/query' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Successful response

Content type: application/json

EconomicResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EconomicResponse"
}

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reference/economics/public-queryqueryPublicBisSeries

No API key required; supplied credentials can add restrictions

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

EconomicRequest

FieldRequiredType / constraintsDescription
startDateYesstring · format: "date"
endDateYesstring · format: "date"
frequencyYesschema · one of: "monthly", "quarterly", "annual"
aggregationYesschema · one of: "mean", "last"
linesYesarray · minItems: 1; maxItems: 8
calculationsNoarray · maxItems: 4
Request schema
{
  "$ref": "#/components/schemas/EconomicRequest"
}

Request example:

{
  "startDate": "2024-01-01",
  "endDate": "2025-12-31",
  "frequency": "quarterly",
  "aggregation": "mean",
  "lines": [
    {
      "id": "s1",
      "series": "bis:total_credit:US:P",
      "transform": "level"
    }
  ],
  "calculations": []
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reference/economics/public-query' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Successful response

Content type: application/json

EconomicResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EconomicResponse"
}

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/economics/dashboardslistEconomicDashboards

API key or signed-in session

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/economics/dashboards' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Successful response

Content type: application/json

EconomicDashboardListResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EconomicDashboardListResponse"
}

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/economics/dashboardssaveEconomicDashboard

API key or signed-in session

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

EconomicDashboardInput

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
visibilityYesschema · one of: "personal", "team"
chartsYesarray · minItems: 1; maxItems: 6
Request schema
{
  "$ref": "#/components/schemas/EconomicDashboardInput"
}

Request example:

{
  "name": "Economic dashboard",
  "visibility": "personal",
  "charts": [
    {
      "title": "Inflation and growth",
      "request": {
        "startDate": "2024-01-01",
        "endDate": "2025-12-31",
        "frequency": "quarterly",
        "aggregation": "mean",
        "lines": [
          {
            "id": "s1",
            "series": "bls:CUSR0000SA0",
            "transform": "yoy"
          },
          {
            "id": "s2",
            "series": "bea:A191RL",
            "transform": "level"
          }
        ],
        "calculations": []
      }
    }
  ]
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/economics/dashboards' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Successful response

Content type: application/json

EconomicDashboardSavedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EconomicDashboardSavedResponse"
}

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/economics/dashboards/{id}deleteEconomicDashboard

API key or signed-in session

Stored, source-linked economic observations and explicitly derived calculations. At most eight series, ten years and a 1.75 MB analysis response. Monthly/quarterly/annual periods; last or mean aggregation; no interpolation, no summing GDP rates. Partial periods, missing values and zero denominators remain null. Transform lookback stays inside requested/account history. BIS-only public queries never enter account billing or paid usage quotas. Other queries require intelligence:read, entitled billing and reference-history access. Saved dashboards require a browser session and workspace:write for mutations; six charts each and the shared organization cap of 20 dashboards. Definitions are saved, not frozen data or point-in-time vintages.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request DELETE 'https://api.filingsift.com/api/v1/account/economics/dashboards/YOUR_ID' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 204

Deleted

HTTP 400

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Invalid request, denied access, bounded result or unavailable source

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Entity Research (6)
GET /reference/entities/{lei}lookupLegalEntity

API key or signed-in session

Standalone GLEIF research; no retained SEC issuer required. Requires intelligence:read, billing access and source admission. History/compare enforce current reference-history access before and after retrieval. Twenty explorer requests/minute per organization share the GLEIF provider quota of 30/minute and five-minute cache. Lists return twenty rows per page, up to 100 pages. Candidates are not confirmed SEC matches; accounting relationships are not complete ownership. Current provider events differ from retained observations. Missing fields remain unavailable.

Parameters

NameLocationRequiredType / constraintsDescription
leipathYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/entities/YOUR_LEI' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked results; inspect status, gaps and coverage.

Content type: application/json

ExplorerEntityResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ExplorerEntityResponse"
}

HTTP 400

Invalid query

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Snapshot unavailable for LEI and account history

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Response limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Rate limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source or evidence unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/entities/{lei}/childrennavigateEntityChildren

API key or signed-in session

Standalone GLEIF research; no retained SEC issuer required. Requires intelligence:read, billing access and source admission. History/compare enforce current reference-history access before and after retrieval. Twenty explorer requests/minute per organization share the GLEIF provider quota of 30/minute and five-minute cache. Lists return twenty rows per page, up to 100 pages. Candidates are not confirmed SEC matches; accounting relationships are not complete ownership. Current provider events differ from retained observations. Missing fields remain unavailable.

Parameters

NameLocationRequiredType / constraintsDescription
leipathYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"
kindqueryNodefault: "direct"; one of: "direct", "ultimate"
pagequeryNointeger · minimum: 1; maximum: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/entities/YOUR_LEI/children' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked results; inspect status, gaps and coverage.

Content type: application/json

ExplorerChildrenResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ExplorerChildrenResponse"
}

HTTP 400

Invalid query

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Snapshot unavailable for LEI and account history

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Response limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Rate limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source or evidence unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/entities/{lei}/timelineentityReportedTimeline

API key or signed-in session

Standalone GLEIF research; no retained SEC issuer required. Requires intelligence:read, billing access and source admission. History/compare enforce current reference-history access before and after retrieval. Twenty explorer requests/minute per organization share the GLEIF provider quota of 30/minute and five-minute cache. Lists return twenty rows per page, up to 100 pages. Candidates are not confirmed SEC matches; accounting relationships are not complete ownership. Current provider events differ from retained observations. Missing fields remain unavailable.

Parameters

NameLocationRequiredType / constraintsDescription
leipathYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/entities/YOUR_LEI/timeline' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked results; inspect status, gaps and coverage.

Content type: application/json

ExplorerTimelineResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ExplorerTimelineResponse"
}

HTTP 400

Invalid query

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Snapshot unavailable for LEI and account history

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Response limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Rate limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source or evidence unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/entities/{lei}/historyentityObservedHistory

API key or signed-in session

Standalone GLEIF research; no retained SEC issuer required. Requires intelligence:read, billing access and source admission. History/compare enforce current reference-history access before and after retrieval. Twenty explorer requests/minute per organization share the GLEIF provider quota of 30/minute and five-minute cache. Lists return twenty rows per page, up to 100 pages. Candidates are not confirmed SEC matches; accounting relationships are not complete ownership. Current provider events differ from retained observations. Missing fields remain unavailable.

Parameters

NameLocationRequiredType / constraintsDescription
leipathYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"
pagequeryNointeger · minimum: 1; maximum: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/entities/YOUR_LEI/history' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-linked results; inspect status, gaps and coverage.

Content type: application/json

ExplorerHistoryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ExplorerHistoryResponse"
}

HTTP 400

Invalid query

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Snapshot unavailable for LEI and account history

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Response limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Rate limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source or evidence unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/entities/{lei}/comparecompareEntityObservations

API key or signed-in session

Standalone GLEIF research; no retained SEC issuer required. Requires intelligence:read, billing access and source admission. History/compare enforce current reference-history access before and after retrieval. Twenty explorer requests/minute per organization share the GLEIF provider quota of 30/minute and five-minute cache. Lists return twenty rows per page, up to 100 pages. Candidates are not confirmed SEC matches; accounting relationships are not complete ownership. Current provider events differ from retained observations. Missing fields remain unavailable.

Parameters

NameLocationRequiredType / constraintsDescription
leipathYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"
fromqueryYesstring · pattern: "^[a-f0-9]{64}$"
toqueryNodefault: "current"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/entities/YOUR_LEI/compare' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'from=YOUR_FROM'

Responses

HTTP 200

Source-linked results; inspect status, gaps and coverage.

Content type: application/json

ExplorerComparisonResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ExplorerComparisonResponse"
}

HTTP 400

Invalid query

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Authentication required or revoked

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Scope or history access denied

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Snapshot unavailable for LEI and account history

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Response limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

Rate limit exceeded

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Source or evidence unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Filings (15)
GET /companiesList companies available to the public explorer

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/companies'

Responses

HTTP 200

Live filing summaries, or clearly labeled illustrative workflow records when the store is empty

Content type: application/json

CompanyListResponse

Response schema
{
  "$ref": "#/components/schemas/CompanyListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /companies/{ticker}Get one company and its disclosure events

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/companies/YOUR_TICKER'

Responses

HTTP 200

Company explorer record

Content type: application/json

CompanyDetailResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/CompanyDetailResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /issuersList issuers represented in structured storage

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/issuers'

Responses

HTTP 200

Paginated issuer resources

Content type: application/json

IssuerListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/IssuerListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /filingsList ingested structured filings

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings'

Responses

HTTP 200

Filing metadata, extraction counts, hashes, and verification state

Content type: application/json

FilingListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FilingListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /filing-calendarInspect one issuer's indexed filing dates for a month and export iCalendar

No API key required; supplied credentials can add restrictions

Deployed with bounded API/frontend and authorization acceptance. Metadata only, not deadlines, earnings forecasts or complete SEC history. Anonymous public metadata access; supplied valid credentials require filings:read, billing, selected-issuer access and valid indexed-history grants. All plans include available indexed history with no plan-based age cutoff. Required month and ticker, optional exact form and limit. No cursor or other filters; repeats are rejected. Bounded metadata query with one lookahead; entries sorted filedAt and accession descending. Always no-store; shares global limits and a 60-request/five-minute organization/client action limit. iCalendar text is exactly this response's entries, with source links, date-only transparent events, stable accession UIDs, no alarms or subscriptions.

Parameters

NameLocationRequiredType / constraintsDescription
monthqueryYesstring · pattern: "^\\d{4}-(0[1-9]|1[0-2])$"Calendar month, year 1900 through 9998; indexed coverage and per-request limits apply
tickerqueryYesstring · pattern: "^[A-Za-z0-9][A-Za-z0-9.-]{0,14}$"Normalized to uppercase, 1–15 characters beginning with a letter or digit
formqueryNostring · maxLength: 32; pattern: "^[A-Za-z0-9][A-Za-z0-9 /-]{0,31}$"Optional exact metadata filter normalized to uppercase; does not establish extraction support
limitqueryNointeger · minimum: 1; maximum: 100; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filing-calendar' \
  --data-urlencode 'month=YOUR_MONTH' \
  --data-urlencode 'ticker=YOUR_TICKER'

Responses

HTTP 200

Bounded indexed filing calendar with explicit unknown external coverage

Content type: application/json

FilingCalendarResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/FilingCalendarResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Duplicate accession or competing issuer identities; no partial calendar is returned

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Invalid or mismatched selected source metadata; no synthetic event is returned

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Bounded storage selector unavailable; no full-catalog fallback

Link to this operation · Download the contract

GET /reporting-timingReview retained reporting-period-to-filing calendar-day intervals

No API key required; supplied credentials can add restrictions

Deployed with real date-arithmetic, truncation/history-refusal, automated date-edge and live stale-query/credential-change acceptance. Requires one issuer, one exact annual/quarterly form or amendment, and an inclusive filing-date window of at most 3660 calendar days, ordered and not future-dated. Selects at most limit plus one metadata row, with the exact form filter applied before LIMIT. All inspected rows, including the lookahead, are validated. Returns at most 100 entries ordered filedAt/accession descending. PostgreSQL uses a bounded metadata projection; the filesystem adapter still loads its catalog before filtering. Calendar days are date-only UTC filedAt minus retained periodEnd; null/empty, invalid and after-filing periods produce null intervals with explicit reasons. Safe raw period strings are preserved, not repaired or replaced from XBRL or inferred fiscal periods. Amendment intervals run to the amendment date, without matching an original filing. Same-period counts describe returned valid recorded periods only. Evidence text is labelled indexed metadata, not a filing quotation. Verification and illustrative labels remain unchanged; complete SEC coverage is unknown. No deadlines, lateness, compliance, severity, rankings, investment findings or fiscal-comparability claims. Existing anonymous metadata access applies; supplied credentials require filings:read, billing, exact issuer and the whole requested history window, without anonymous fallback. No GET body, unknown/repeated/array parameters or cursor. No-store, global size limits and a separate 60-request/five-minute organization-or-client/IP action bucket. No new provider, feed, migration, enrichment or server snapshot.

Parameters

NameLocationRequiredType / constraintsDescription
tickerqueryYesstring · pattern: "^[A-Za-z0-9][A-Za-z0-9.-]{0,14}$"Trimmed and normalized to uppercase; one exact issuer ticker
formqueryYesstring · one of: "10-K", "10-K/A", "10-Q", "10-Q/A", "20-F", "20-F/A"Trimmed and normalized to uppercase; original forms and amendments are separate exact filters
filedFromqueryYesstring · format: "date"; pattern: "^\\d{4}-\\d{2}-\\d{2}$"Inclusive date, year 1900–9998; no later than filedTo and fully within supplied-credential history access
filedToqueryYesstring · format: "date"; pattern: "^\\d{4}-\\d{2}-\\d{2}$"Inclusive date, year 1900–9998; no later than today, at most 3660 inclusive days after/including filedFrom
limitqueryNointeger · minimum: 1; maximum: 100; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reporting-timing' \
  --data-urlencode 'ticker=YOUR_TICKER' \
  --data-urlencode 'form=YOUR_FORM' \
  --data-urlencode 'filedFrom=YOUR_FILEDFROM' \
  --data-urlencode 'filedTo=YOUR_FILEDTO'

Responses

HTTP 200

Bounded metadata-derived interval review with source-linked entries, explicit unavailable dates and unknown coverage

Content type: application/json

ReportingTimingResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/ReportingTimingResponse"
}

HTTP 400

Invalid query

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Invalid history/issuer grant

HTTP 409

Duplicate accession or competing issuer CIKs; no preferred filing or partial review is selected

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Unsafe

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Required bounded storage selector or valid review clock unavailable

Link to this operation · Download the contract

GET /filings/{accession}Get a complete structured filing without raw SEC HTML

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filings/YOUR_ACCESSION'

Responses

HTTP 200

Sections, tables, facts, signals, refusals, processing versions, and provenance

Content type: application/json

StructuredFilingResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/StructuredFilingResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}Read a page of source-backed passages, exhibits, and related filings

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
offsetqueryNointeger · minimum: 0; maximum: 1000000; default: 0
limitqueryNointeger · minimum: 1; maximum: 100; default: 100
passagequeryNostringOpen this exact retained passage
revisionqueryNostringRevision returned by the preceding page
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION'

Responses

HTTP 200

Evidence-anchored filing reader

Content type: application/json

ReaderDocumentResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderDocumentResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/source-inventoryInspect retained primary and exhibit metadata with an unknown-coverage receipt

No API key required; supplied credentials can add restrictions

Deployed with populated public receipt, exact browser-download, direct-view and changed-session acceptance. Reads one structured filing, with primary metadata and the first 50 retained exhibit entries inspected. Counts are retained array lengths, not validated passages or extraction success. Missing/invalid collections remain null. Recorded duplicate status does not mean unfetched; local extraction and duplicate-pointer presence are separate observations. Internal duplicate IDs are withheld. Exhibit verification is independent of filing-level verification. Rights-filtered exclusions already applied by storage cannot be counted; additional restricted or unclassifiable rights entries in the bounded window are excluded. Unsafe exhibit URLs become null with explicit issues. Expected SEC document count and source completeness remain unknown. No raw-document fetch/archive, market-wide filing-catalog scan or writes. No query parameters or request body. Public reader policy; supplied credentials require reader:read, billing and current issuer/history access. Always no-store; dedicated 60-request/five-minute action limit per organization or anonymous client, plus the global response-size limit.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/source-inventory'

Responses

HTTP 200

Bounded metadata receipt with explicit unknowns and recorded—not reverified—hashes

Content type: application/json

SourceInventoryResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/SourceInventoryResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Top-level filing identity

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reader/source-inventory-comparisonCompare retained exhibit metadata by exact recorded filename

No API key required; supplied credentials can add restrictions

Deployed with populated WOLF one-sided groups, exact receipts and stale/access refusals; paired, repeated and unkeyed cases use automated fixtures because the sampled real filings had no equal filenames. Select two distinct same-CIK filing inventories using their complete receipt hashes. Filing dates must be valid and nonfuture, with before filedAt no later than after filedAt. Changed receipts return 409. Only exact case-sensitive safe recorded basenames form groups; unique one-per-side names pair, duplicates on either side remain ambiguous and unusable names remain separate unkeyed entries. Primary documents are retained in both full source receipts but not compared. At most 50 retained exhibit positions per source are inspected, with rights exclusions preserved and at most 100 groups. Metadata changes compare only the fixed field set; original documents are not fetched and recorded hashes are not recomputed. One-sided entries are not SEC omissions or terminations, filename equality is not agreement identity, and hash changes are not legal change findings. Verification and illustrative states remain unchanged; source completeness is unknown and missing metadata remains null. Existing anonymous reader policy applies. Supplied credentials require reader:read, billing and issuer and indexed-history access for both sources, without anonymous fallback. No query parameters. No-store, global size limits and a separate 60-request/five-minute organization-or-client/IP action bucket. Reads two existing structured records; no market filing-catalog scan, new feed, provider activation, migration, raw archive or server snapshot.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SourceInventoryComparisonRequest

FieldRequiredType / constraintsDescription
beforeYesobject
afterYesobject
Request schema
{
  "$ref": "#/components/schemas/SourceInventoryComparisonRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reader/source-inventory-comparison' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Deterministic retained-exhibit groups with both full inventory receipts and unknown coverage

Content type: application/json

SourceInventoryComparisonResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/SourceInventoryComparisonResponse"
}

HTTP 400

Invalid body/selectors

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

A complete inventory receipt hash changed; reload the sources before comparing again

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Unsafe or inconsistent filing identity

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/tablesList bounded primary tables for explicit cell-level inspection

No API key required; supplied credentials can add restrictions

Deployed with bounded real-table, hash and spreadsheet-import acceptance. Lists at most 50 retained primary tables, source-bound selection IDs, dimensions, eligibility and unknown upstream completeness. No query parameters. Anonymous reader policy; supplied credentials require reader:read, billing, current issuer and canonical filing-date/history access. One filing lookup; no catalog scan. Always no-store, global response-size limit, and shared 60-request/five-minute table catalog/detail/arithmetic action limit per organization or anonymous client. Cells are not included until explicit selection.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/tables'

Responses

HTTP 200

Primary retained-table catalog, not proof of complete source extraction

Content type: application/json

FilingTableCatalogResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/FilingTableCatalogResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Unsafe or inconsistent filing source provenance

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/tables/{tableId}Inspect and export one explicitly selected retained primary table

No API key required; supplied credentials can add restrictions

Deployed with bounded real-table, hash and spreadsheet-import acceptance. Select a current catalog tableId; changes to content or source/parser/verification metadata produce 409, not a replacement selection. Bounds are 200 rows, 50 cells per row, 100000 UTF16 code units across cells and context, and 2000 context characters. Oversized or invalid tables are refused, not sliced. Retains exact stored strings and ragged arrays, not original HTML whitespace, merged cells or inferred financial headers/units. JSON is authoritative; CSV repeats source identity and row_cell_count, pads ragged rows and applies disclosed apostrophe formula protection. Import as text; no universal safety guarantee across spreadsheet clients or re-saving. No query parameters; same reader authorization and action limits as the table catalog. Always no-store; writes no filing or server snapshot.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
tableIdpathYesstring · pattern: "^table-[a-f0-9]{64}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/tables/YOUR_TABLEID'

Responses

HTTP 200

Exact retained cells, source context, export policy, CSV and checksums

Content type: application/json

FilingTableReviewResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/FilingTableReviewResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Table selection changed or is unavailable; reload catalog and select again

HTTP 413

Table or response exceeds its explicit bound

HTTP 422

Invalid cells

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reader/filings/{accession}/tables/{tableId}/arithmeticCheck an explicitly selected total against same-column component cells

No API key required; supplied credentials can add restrictions

Deployed with real retained-integer, unavailable-operand and automated exact-decimal acceptance. Read-only exact decimal arithmetic on retained table strings; no manual numeric overrides. One total and 1–20 distinct components must use the same column. The declared dot-decimal/comma-grouping convention permits an ASCII sign or negative parentheses. Blank, missing, ambiguous, currency/percent or footnoted values are unavailable, never zero. Maximum 40 integer digits, 12 fractional digits and 80 retained characters per interpreted cell. Unit and period are recorded as explicit analyst attestations. Equal/different only describes the selected arithmetic without a rounding tolerance, accounting correctness or verification upgrade. Reuses source-bound table IDs, reader access and table bounds; changed sources return 409. Inspects the selected filing's bounded table inventory, with no query parameters, market-wide filing-catalog scan, SEC fetch or persistence. No-store and shared 60-request/five-minute table action limit.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
tableIdpathYesstring · pattern: "^table-[a-f0-9]{64}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

TableArithmeticRequest

FieldRequiredType / constraintsDescription
totalYesobject
componentsYesarray · minItems: 1; maxItems: 20Same column as total; distinct coordinates excluding the total
declarationYesobject
Request schema
{
  "$ref": "#/components/schemas/TableArithmeticRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/tables/YOUR_TABLEID/arithmetic' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-bound arithmetic receipt, including unavailable-operand results

Content type: application/json

TableArithmeticResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/TableArithmeticResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Source-bound table selection changed; reload and select again

HTTP 413

Selected source table or response exceeds its bound

HTTP 422

Source cells

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reader/table-cell-comparisonCompare explicit cell pairs from two source-bound retained primary tables

No API key required; supplied credentials can add restrictions

Deployed with a populated public comparison and automated pair/hash/access/numeric edge-case acceptance. Requires two distinct filings with the same known canonical CIK, valid nonfuture filing dates, and before filedAt no later than after filedAt. Each selection binds accession, tableId and full retained-table-review contentSha256. Changed sources return 409. Select 1–20 cell pairs; before and after coordinates must each be unique independently. Required unit/scale, period labels, numeric convention and sameBasisConfirmed records an explicit analyst attestation. There is no automatic label matching or manual numeric override. Numeric difference is exact after minus before with no rounding, percentage change, FX conversion, restatement finding or verification promotion. Missing or unsupported operands remain unavailable, never zero; other valid pairs still calculate. Source completeness remains unknown. Anonymous requests follow existing reader policy; supplied credentials require reader:read, billing and issuer and indexed-history access for both sources, without anonymous fallback. No query parameters. No-store, global response limits, and 60 operations per organization or anonymous client per five minutes. Reads two stored structured filings; no market-catalog scan, SEC fetch, exhibit inspection, provider feed, migration or persistence is introduced.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

TableCellComparisonRequest

FieldRequiredType / constraintsDescription
beforeYesobject
afterYesobject
pairsYesarray · minItems: 1; maxItems: 20Each before coordinate and each after coordinate may appear only once independently; cross-side columns may differ
declarationYesobject
Request schema
{
  "$ref": "#/components/schemas/TableCellComparisonRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reader/table-cell-comparison' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Exact pairwise comparison with both-source receipts and explicit unavailable operands

Content type: application/json

TableCellComparisonResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/TableCellComparisonResponse"
}

HTTP 400

Invalid selectors/declarations

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

A selected source-bound table ID or complete review hash changed; reload both sources and select again

HTTP 413

Selected source table or response exceeds the established bound

HTTP 422

Source provenance

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/sectionsList bounded primary-document sections for explicit comparison

No API key required; supplied credentials can add restrictions

Deployed with public retained-section hash, stale-selection, fallback, access, whitespace and limit acceptance. Returns at most 80 retained primary sections, content-bound IDs, source metadata, eligibility and extraction coverage. Does not include exhibits or fetch SEC documents. Missing inventory counts remain null; source completeness is always unknown. Public anonymous reads follow the existing reader policy. Supplied credentials must authenticate and have reader:read, billing, current issuer and history access. No query filters. Always no-store. Shares 60 requests per five minutes with selected-section comparisons per organization or anonymous client.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/sections'

Responses

HTTP 200

Bounded extracted-section catalog

Content type: application/json

ReaderSectionCatalogResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderSectionCatalogResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Authenticated billing access required

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Filing source metadata cannot establish a valid SEC evidence boundary

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Intake (2)
POST /leadsStore a design-partner early-access request

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

LeadRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
emailYesstring · format: "email"; maxLength: 254
companyYesstring · minLength: 1; maxLength: 200
workflowYesstring · one of: "Credit or covenant monitoring", "Investment research", "Financial data product", "AI or agent development", "Other"
coverageNostring · maxLength: 2000
pilotYesstring · one of: "Ready for a paid pilot", "Open to a paid pilot after validation", "Researching for later"
websiteNostring · maxLength: 200Honeypot; human users leave blank.
turnstileTokenYesstring · minLength: 1; maxLength: 2048Single-use Cloudflare Turnstile token for action lead.
Request schema
{
  "$ref": "#/components/schemas/LeadRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/leads' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 201

Request stored

Content type: application/json

LeadResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/LeadResponse"
}

HTTP 202

Honeypot request accepted without storage

Content type: application/json

AcceptedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AcceptedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /analytics/eventsStore an allowlisted cookie-free first-party website event

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

AnalyticsEventRequest

FieldRequiredType / constraintsDescription
eventYesstring · one of: "page_view", "explorer_loaded", "explorer_fallback", "design_partner_form_started", "design_partner_form_submitted", "design_partner_form_failed"
pathYesstring · maxLength: 500; pattern: "^/"
propertiesNoobject
Request schema
{
  "$ref": "#/components/schemas/AnalyticsEventRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/analytics/events' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 202

Event stored

Content type: application/json

AcceptedResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AcceptedResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Integrations (18)
GET /feeds/{token}/{format}Read a revocable RSS or Atom monitoring feed

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
tokenpathYesstring
formatpathYesstring · one of: "rss", "atom"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/feeds/YOUR_TOKEN/YOUR_FORMAT'

Responses

HTTP 200

Private evidence-linked monitoring feed

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/integrationsList feeds, channels, destinations, export jobs, dashboards, caps, and provider readiness without returning secrets

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Integration overview

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/feedRevoke the prior feed token and display a replacement once

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

One-time feed token and RSS and Atom paths

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/integrations/feedRevoke the active private feed token

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Feed revoked

Link to this operation · Download the contract

POST /account/integrations/channelsStore an encrypted provider-bound Slack or Teams webhook

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

IntegrationChannelRequest

FieldRequiredType / constraintsDescription
kindYesstring · one of: "slack", "teams"
displayNameYesstring · minLength: 1; maxLength: 120
urlYesstring · format: "uri"Customer-owned provider webhook URL. Treat it as a secret; only supported provider hosts are accepted.
Request schema
{
  "$ref": "#/components/schemas/IntegrationChannelRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Channel created and URL never returned

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/integrations/channels/{id}Remove a collaboration delivery channel

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Channel removed

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/channels/{id}/testSend a bounded test alert to a configured channel

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Test delivered

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/destinationsConfigure customer S3 or Google Sheets delivery

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

IntegrationDestinationRequest

Request schema
{
  "$ref": "#/components/schemas/IntegrationDestinationRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

S3 or Google Sheets destination created; S3 external ID displayed once

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/integrations/destinations/{id}Remove an export destination

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Destination removed

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/exportsQueue a bounded monitoring export to a configured destination

Signed-in website session · API keys are not accepted

Required scopes: exports:read. Account, role and source checks still apply.

Exports up to 1,000 recent monitoring-delivery records to an active authorized destination. This is not an arbitrary filing or model export. Inspect exportJobs in GET /account/integrations for completion, manifest or error.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
destinationIdYesstring · format: "uuid"
Request schema
{
  "type": "object",
  "required": [
    "destinationId"
  ],
  "properties": {
    "destinationId": {
      "type": "string",
      "format": "uuid"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 202

Export queued

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/dashboardsCreate a personal or shared dashboard with bounded calculated fields

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

IntegrationDashboardRequest

FieldRequiredType / constraintsDescription
displayNameYesstring · minLength: 1; maxLength: 120
visibilityNostring · default: "team"; one of: "personal", "team"
widgetsNoarray · minItems: 0; maxItems: 20
calculatedFieldsNoarray · minItems: 0; maxItems: 20
Request schema
{
  "$ref": "#/components/schemas/IntegrationDashboardRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Dashboard created

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/integrations/dashboards/{id}Remove a dashboard created by the current user

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Dashboard removed

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/integrations/calculated-fields/previewEvaluate bounded arithmetic; missing inputs and division by zero return null

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
expressionYesstring
valuesNoobject
Request schema
{
  "type": "object",
  "required": [
    "expression"
  ],
  "properties": {
    "expression": {
      "type": "string"
    },
    "values": {
      "type": "object",
      "additionalProperties": {
        "type": [
          "number",
          "null"
        ]
      }
    }
  }
}

Request example:

{
  "expression": "cash / debt",
  "values": {
    "cash": 100,
    "debt": 200
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Nullable numeric preview

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/mobile/alertsList recent organization alerts with user-specific triage state

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Mobile alert queue

Link to this operation · Download the contract

PATCH /account/mobile/alerts/{id}Acknowledge or dismiss one organization alert for the current user

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
statusYesstring · one of: "acknowledged", "dismissed"
noteNostring · maxLength: 1000
Request schema
{
  "type": "object",
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "acknowledged",
        "dismissed"
      ]
    },
    "note": {
      "type": "string",
      "maxLength": 1000
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Triage state updated

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/enterprise-identityReturn demand-gated OIDC and SCIM activation state

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Enterprise identity readiness with no unapproved connector activated

Link to this operation · Download the contract

GET /account/enterprise-controlsReturn the organization enterprise-demand receipt and truthful per-control readiness

Signed-in website session · API keys are not accepted

Controlled pilots remain available without enterprise procurement. Browser owner or admin session required; no secret identity metadata or assessment report is returned.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Enterprise demand

Link to this operation · Download the contract

POST /account/enterprise-controls/requestsAppend a bounded organization enterprise-demand receipt without activating any control

Signed-in website session · API keys are not accepted

Records requested OIDC SSO, SCIM, independent penetration test, SOC 2 path, contractual support, or SLA needs. This endpoint does not create a contract, certification, assessment, or service commitment.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
requestedControlsYesarray · minItems: 1; maxItems: 6
identityProviderNostring · one of: "okta", "microsoft_entra_id", "google_workspace", "ping_identity", "other", "unspecified"
estimatedSeatsNostring · one of: "1_25", "26_100", "101_500", "500_plus", "unspecified"
targetQuarterNostring | null · pattern: "^20[0-9]{2}-Q[1-4]$"
supportWindowNostring · one of: "business_hours", "extended_hours", "24x7", "unspecified"
noteNostring · maxLength: 1000
Request schema
{
  "type": "object",
  "required": [
    "requestedControls"
  ],
  "properties": {
    "requestedControls": {
      "type": "array",
      "minItems": 1,
      "maxItems": 6,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "oidc_sso",
          "scim",
          "independent_penetration_test",
          "soc2",
          "contractual_support",
          "sla"
        ]
      }
    },
    "identityProvider": {
      "type": "string",
      "enum": [
        "okta",
        "microsoft_entra_id",
        "google_workspace",
        "ping_identity",
        "other",
        "unspecified"
      ]
    },
    "estimatedSeats": {
      "type": "string",
      "enum": [
        "1_25",
        "26_100",
        "101_500",
        "500_plus",
        "unspecified"
      ]
    },
    "targetQuarter": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^20[0-9]{2}-Q[1-4]$"
    },
    "supportWindow": {
      "type": "string",
      "enum": [
        "business_hours",
        "extended_hours",
        "24x7",
        "unspecified"
      ]
    },
    "note": {
      "type": "string",
      "maxLength": 1000
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Append-only demand receipt created; no enterprise control activated

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Intelligence (46)
GET /coverage/statusGet aggregate production SEC polling, ingestion, corpus completion, and rolling latency status

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/coverage/status'

Responses

HTTP 200

Customer-safe aggregate coverage, queue, financing-corpus completion, freshness, delay, and rolling p50/p95 SEC latency telemetry

Content type: application/json

PublicCoverageStatusResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/PublicCoverageStatusResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /coverage/marketGet supported-form SEC coverage, freshness, extraction success, and known gaps

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
cikqueryNostring · pattern: "^[0-9]{1,10}$"
cursorqueryNostring · pattern: "^[0-9]{10}$"
limitqueryNointeger · minimum: 1; maximum: 100; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/coverage/market'

Responses

HTTP 200

Per-form and bounded per-issuer coverage with stream, reconciliation, backfill, freshness, and explicit-gap telemetry

Content type: application/json

MarketCoverageResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MarketCoverageResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /coverageGet authenticated company-set coverage and freshness telemetry

API key or signed-in session

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/coverage' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Account-scoped configured and indexed coverage

Content type: application/json

CoverageResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/CoverageResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/vocabularyList supported deep-financing concepts and bounds

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/vocabulary'

Responses

HTTP 200

Financing intelligence vocabulary

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/financing-conditionsInspect SEC financing-event candidates beside rights-gated overnight benchmarks

API key or signed-in session

Deployed with bounded authenticated New York Fed production acceptance. Authentication, intelligence:read, billing access, and issuer and indexed-history access are required. Supply both dates or neither; the default is 90 inclusive calendar days ending today (UTC). The maximum is 366 inclusive days, starting no earlier than 1900-01-01 and ending no later than today. Only these query parameters are accepted; request bodies are rejected. SEC selection is clamped to the entitled history start before reading 40 filings plus one lookahead; benchmark dates retain the requested window. At most 200 extracted event candidates are returned. New York Fed fetching is disabled without an active approved server-side rights record; a 200 response can contain rights_review_required or unavailable benchmarks. Only dates are sent upstream. Benchmarks reflect latest revisions, not historical vintages or issuer borrowing costs. No transaction date, refinancing attribution, or compliance conclusion is inferred. See docs/integrations/FINANCING_CONDITIONS.md for rights and owner-controlled release gates.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
startDatequeryNostring · format: "date"Inclusive start; requires endDate
endDatequeryNostring · format: "date"Inclusive end; requires startDate
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/financing-conditions' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Bounded SEC coverage receipt and separately gated SOFR/EFFR context; missing data remains null

Response headers: Cache-Control.

Content type: application/json

FinancingConditionsResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FinancingConditionsResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Account lacks billing access

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

financing_context_source_invalid; stored sources cannot be safely scoped to the issuer and date range

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

financing_context_unavailable; required storage interface is unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/financing-environmentReview SEC financing context beside independently sourced government market and survey data

API key or signed-in session

Deployed with bounded authenticated production acceptance. Requires intelligence:read, billing, issuer and full requested-history access. Supply both dates or neither; the default is the trailing 90 UTC days and the inclusive window cannot exceed 366 days or end in the future. Reads at most 40 eligible filings plus one lookahead and returns at most 200 SEC event candidates. With stored-history expansion enabled, seven source groups cover Treasury nominal and real curves, bill rates, auctions, SLOOS, OFR repo, and New York Fed SOFR averages/Index. Source groups retain independent states, receipts, dates and gaps. Nominal curves have 14 maturities; SLOOS has 33 selected series. The SOFR Index uses index units. Stored auctions return at most 200 records with explicit truncation; narrow the requested dates for remaining records. Official PDF links are provided; PDF bodies are not archived. Latest revisions are not vintage data, and no issuer borrowing quote, forecast, rating, causal relationship or recommendation is inferred.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
startDatequeryNostring · format: "date"Inclusive start; requires endDate
endDatequeryNostring · format: "date"Inclusive end; requires startDate
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/financing-environment' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

filingsift-financing-environment-v1 with request, issuer, bounded filingContext, seven independently sourced source envelopes when expansion is enabled (four otherwise), generatedAt and limitations

Response headers: Cache-Control.

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/financingGet the source-linked issuer financing ledger

No API key required; supplied credentials can add restrictions

Returns debt instruments, facilities, covenants, financing events, maturity schedules and roll-forwards, rate terms, security-package and going-concern history, a multi-period timeline, and candidate contradiction or stale-value warnings. Missing data remains null and no severity or investment conclusion is assigned.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/financing'

Responses

HTTP 200

Bounded evidence-backed financing ledger

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/debt-instrumentsGet the bounded source-linked debt-instrument inventory

No API key required; supplied credentials can add restrictions

Returns current and prior observed balances, safely calculated changes, last-reported maturities, observation history, explicit unavailable fields, and separately labeled issuer-level rate, security, and lifecycle context. Issuer-level observations are never inferred to belong to a specific instrument.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/debt-instruments'

Responses

HTTP 200

Debt Instrument Inventory v1 with exact SEC evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/debt-lifecycleGet matched debt lifecycles and maturity roll-forwards

No API key required; supplied credentials can add restrictions

Uses exact normalized specific identities across at most 40 eligible filings. Generic instruments, unbound events, noisy candidates, missing values, and incompatible maturity schedules remain explicit and are never inferred or replaced with zero.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/debt-lifecycle'

Responses

HTTP 200

Debt Lifecycle and Maturity v1 with exact SEC evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/debt-amendmentsInspect bounded source-linked debt agreement and amendment histories

No API key required; supplied credentials can add restrictions

Deployed after legacy-corpus reprocessing, bounded public readback and source-hash-pinned matching/refusal acceptance. Broader amendment-chain accuracy and market-wide recall remain unproven. Reads up to limit eligible filings plus one lookahead. Public access is supported; supplied credentials require intelligence:read, billing access, and issuer and indexed-history access. No continuation cursor or frozen history edition is provided. Explicit dated references and candidate instrument identities remain separate; no legal identity, causal balance change, current balance, or complete history is inferred. Older extractions without debt-reference metadata have unknown coverage. Only limit is accepted as a query parameter.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
limitqueryNointeger · minimum: 1; maximum: 100; default: 40Maximum eligible stored filings; one additional filing is read to detect truncation

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/debt-amendments'

Responses

HTTP 200

Bounded observed history; no eligible stored filings returns an empty result with an unknown expected filing count

Response headers: Cache-Control.

Content type: application/json

DebtAmendmentHistoryResponse

FieldRequiredType / constraintsDescription
dataYesobjectBounded observed history, not a complete legal archive, complete SEC denominator, frozen edition, or authoritative current balance. Identity and relation status are never automatically verified.
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/DebtAmendmentHistoryResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Supplied account lacks billing access

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

debt_history_unavailable when the storage interface is unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/covenant-trackerGet covenant thresholds, schedules, explicit headroom, and amendments

No API key required; supplied credentials can add restrictions

Calculates headroom only when a single observation explicitly contains compatible threshold, observed value, and comparator inputs. Missing inputs and ambiguous covenant identities remain unresolved; no compliance, severity, or investment conclusion is assigned.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/covenant-tracker'

Responses

HTTP 200

Covenant Tracker v1 with exact SEC evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/default-remediationGet defaults, remediation candidates, and going-concern changes

No API key required; supplied credentials can add restrictions

Returns explicit-occurrence default and breach candidates, waiver/forbearance/cure candidates, same-evidence remediation links, unresolved mentions, and consecutive-filing going-concern detection changes. It does not infer legal effect, cure, compliance, severity, or an investment conclusion.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/default-remediation'

Responses

HTTP 200

Default and Remediation Timeline v1 with exact SEC evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/instrument-termsCompare explicitly bound instrument terms across filings

No API key required; supplied credentials can add restrictions

Compares rates, benchmarks, floors, spreads, collateral, guarantors, security packages, and changed source passages only for explicit same-clause specific instrument identities. Incompatible or ambiguous observations remain unresolved; no legal effect, severity, materiality, or investment conclusion is assigned.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/instrument-terms'

Responses

HTTP 200

Instrument Terms Comparison v1 with prior/current SEC evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/timelineGet the bounded debt and liquidity timeline and maturity roll-forwards

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/timeline'

Responses

HTTP 200

Multi-period timeline with source-linked values and explicit unavailable fields

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /intelligence/issuers/{ticker}/qualityGet contradiction and stale-value candidates without selecting a winner

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Z0-9.-]{1,16}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/intelligence/issuers/YOUR_TICKER/quality'

Responses

HTTP 200

Source-linked data-quality candidates and deterministic methodology identifiers

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/bank-peersLoad retained account and optional issuer context without contacting FDIC

Signed-in website session · API keys are not accepted

Deployed with bounded real FDIC search, two-bank/two-quarter comparison and export acceptance. Browser session only; API keys are rejected. Requires account:read, intelligence:read, billing access and a valid reference-data retrieval lookback. Optional issuerTicker additionally requires current issuer access and one eligible retained SEC source. Reads only existing private GLEIF review state; does not fetch GLEIF or FDIC, create a review, or imply a bank-to-issuer mapping. No body or other query parameters. The shared workspace limit is 30 operations per organization and user per five minutes. The standalone workflow needs no new migration; unavailable migration-030 review storage leaves optional identity context unresolved. Base FDIC institution and Call Report sources are enabled under the current admission; expansion datasets remain separately gated.

Parameters

NameLocationRequiredType / constraintsDescription
issuerTickerqueryNostring · pattern: "^[A-Z0-9][A-Z0-9.-]{0,15}$"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Account limits, fully completed-quarter defaults and optional saved issuer identity context; no provider request

Response headers: Cache-Control.

Content type: application/json

BankPeerContextResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankPeerContextResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Retained optional issuer source or private artifact integrity is invalid

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/bank-peers/searchExplicitly search FDIC for a public bank name without confirming issuer identity

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and valid history access. No query parameters or arbitrary provider filters. The explicit public bank name is sent as a bounded phrase query; do not submit customer-private text. Returns at most ten candidate institution rows and exact request receipts without following pagination. A bank name, high-holder name or RSSD identifier never confirms an SEC issuer match. Current FDIC admission is active. Disabled, expired, empty, partial and unavailable provider states are explicit in a 200 response, not replaced with illustrative data. No private review or customer state is written.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

BankPeerSearchRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 2; maxLength: 120Explicit public bank name; trimmed text must have at least two characters. Control characters and unsupported query-angle syntax are rejected; never submit private customer text
Request schema
{
  "$ref": "#/components/schemas/BankPeerSearchRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Bounded public-name candidates with source admission, request receipts and known gaps

Response headers: Cache-Control.

Content type: application/json

BankPeerSearchResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankPeerSearchResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Provider metadata failed the supported source contract

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/bank-peers/compareCompare selected bank certificates across exact reporting quarters with coverage receipts

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and history access. Requires one through five canonical FDIC certificate strings, an exact calendar-quarter end and one through eight consecutive quarters; all dates must be no earlier than 1992-12-31, within the account reference-data retrieval window and not future. No query parameters, silent date clamping or replacement quarters. The four balance-sheet measures retain USD-thousands scale and decimal strings; missing, unavailable and duplicate records remain explicit. No totals, ratios, rankings, safety scores or investment conclusions. FDIC bank reports can overlap through subsidiary consolidation and must not be summed as issuer or industry totals. Optional issuerTicker rechecks source and private-review versions before and after retrieval. Only equality between the bank LEI and the current private-reviewed issuer LEI yields identifier_consistent, limited to current reference sources; differing LEIs remain unmapped. Names, CIK guesses, RSSD high holders and GLEIF parent links never create an issuer association. A changed context returns 409. This is an ephemeral response, not a saved customer snapshot or original-publication-vintage archive. A disabled, expired or unavailable FDIC admission yields explicit unavailable cells in 200.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

BankPeerComparisonRequest

FieldRequiredType / constraintsDescription
certsYesarray · minItems: 1; maxItems: 5
reportDateYesstring · format: "date"; pattern: "^[0-9]{4}-(03-31|06-30|09-30|12-31)$"Exact calendar-quarter end; comparison requests also enforce current history access and nonfuture dates no earlier than 1992-12-31
quartersYesinteger · minimum: 1; maximum: 8Selected quarter plus this count minus one preceding consecutive quarters; crossing history access is refused, not clamped
issuerTickerNoanyOf · default: null
Request schema
{
  "$ref": "#/components/schemas/BankPeerComparisonRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Exact requested bank-period observations, conservative mapping states, typed cells and complete bounded cell accounting

Response headers: Cache-Control.

Content type: application/json

BankPeerComparisonResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/BankPeerComparisonResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Optional retained issuer or private review changed during retrieval; reload rather than reuse stale context

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Source scope

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/bank-peers/expansionLoad separately admitted FDIC Call Report, deposit-geography, and failure datasets

Signed-in website session · API keys are not accepted

Browser session only with the same access and exact selector bounds as bank comparison. The six additional Call Report metrics, annual Summary of Deposits state aggregation, and selected-certificate failure history each have an independent server-owned dataset admission. An unapproved dataset returns rights_review_required with no rows, receipts, provider request, or illustrative substitute. Branch state is not customer or revenue geography; failure history is not a safety rating or prediction.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

BankPeerComparisonRequest

FieldRequiredType / constraintsDescription
certsYesarray · minItems: 1; maxItems: 5
reportDateYesstring · format: "date"; pattern: "^[0-9]{4}-(03-31|06-30|09-30|12-31)$"Exact calendar-quarter end; comparison requests also enforce current history access and nonfuture dates no earlier than 1992-12-31
quartersYesinteger · minimum: 1; maximum: 8Selected quarter plus this count minus one preceding consecutive quarters; crossing history access is refused, not clamped
issuerTickerNoanyOf · default: null
Request schema
{
  "$ref": "#/components/schemas/BankPeerComparisonRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Exact request-bound expansion with independent dataset status, coverage, receipts, limitations and content hash

Response headers: Cache-Control.

Content type: application/json

FdicExpansionResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FdicExpansionResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Expansion source scope or response shape could not be established

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/entity-matches/{ticker}Read the current user's source-bound issuer identity review

Signed-in website session · API keys are not accepted

Deployed with migration 030 applied and bounded live source-admission, access, concurrency, stale-source and deletion acceptance. Browser session only, with account:read, intelligence:read, billing and current issuer and indexed-history access. API keys, query parameters and request bodies are rejected. Reads one latest eligible retained SEC issuer source and private reviews without contacting GLEIF. Changed SEC source hashes make previous confirmations currently unresolved; inaccessible saved sources are hidden, not refreshed. Returns at most 20 history summaries. All entity-review operations share 30 requests per organization/user per five minutes.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Current SEC subject and private review; confirmed means reviewer attestation, not GLEIF verification or credit support

Response headers: Cache-Control.

Content type: application/json

EntityMatchResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EntityMatchResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access is required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Retained subject or artifact integrity could not be established

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Required subject or private review storage is unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/entity-matches/{ticker}Explicitly delete all of the user's saved revisions for one CIK

Signed-in website session · API keys are not accepted

Browser session, account:read and active organization membership required; billing, intelligence:read and issuer and indexed-history access are not required for owner cleanup. Required JSON body identifies the saved ten-digit CIK; ticker is syntactically validated but no SEC/provider lookup is made. Deletes only this organization's current user's CIK history, not issuer data. No query parameters. Do not automatically retry an uncertain outcome.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
cikYesstring · pattern: "^(?!0000000000$)[0-9]{10}$"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "cik"
  ],
  "properties": {
    "cik": {
      "type": "string",
      "pattern": "^(?!0000000000$)[0-9]{10}$"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Owned CIK review history removed; no response body

Response headers: Cache-Control.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Private review storage is unavailable; deletion is not confirmed

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/entity-matches/{ticker}/candidatesExplicitly search GLEIF using the retained public SEC issuer name

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and issuer and indexed-history access. Requires an empty JSON object; no query parameters or customer-supplied search text. Returns at most ten first-page candidates; normalized name equality is not verification. GLEIF source admission is active under the current reviewed server-owned approval. Disabled, expired, empty or unavailable provider states remain explicit in a 200 response.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

Request schema
{
  "type": "object",
  "additionalProperties": false,
  "maxProperties": 0
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

SEC-bound candidate search with provider receipts and explicit gaps

Response headers: Cache-Control.

Content type: application/json

EntityMatchCandidatesResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EntityMatchCandidatesResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access is required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Retained SEC issuer source is invalid

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Required issuer source storage is unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/entity-matches/{ticker}/previewPreview one explicitly selected LEI and reported consolidation relationships

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and issuer and indexed-history access. No query parameters. The LEI must pass MOD 97 check digits. Retrieves bounded direct/ultimate parent or reporting-exception records; does not recursively follow parents or successors. Preview is not a saved confirmation. Disabled/unavailable GLEIF yields an explicit unresolved preview. GLEIF's CC0 data remains separate from private notes.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
leiYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"Uppercase twenty-character LEI; server additionally verifies MOD 97 check digits
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "lei"
  ],
  "properties": {
    "lei": {
      "$ref": "#/components/schemas/EntityMatchLei"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Unsaved source-bound normalized artifact with candidate or unresolved state

Response headers: Cache-Control.

Content type: application/json

EntityMatchPreviewResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EntityMatchPreviewResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access is required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Normalized source artifact exceeds 100000 bytes

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Source identity or shape is invalid

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Required issuer source storage is unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/entity-matches/{ticker}/expansionExplicitly load admitted GLEIF event dates and bounded child relationships

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and issuer and indexed-history access. The checksum-valid exact LEI is bound to the current retained SEC subject. The registration/entity-event timeline and Level 2 direct/ultimate child relationship records have independent dataset admissions. Unapproved datasets return rights_review_required without a provider call. Child results are first-page only, capped at twenty per relationship class, and never imply beneficial ownership, control percentage, a guarantee or a complete historical snapshot.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
leiYesstring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"Uppercase twenty-character LEI; server additionally verifies MOD 97 check digits
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "lei"
  ],
  "properties": {
    "lei": {
      "$ref": "#/components/schemas/EntityMatchLei"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

SEC-subject-bound expansion with per-dataset status, bounded coverage, exact receipts, gaps and limitations

Response headers: Cache-Control.

Content type: application/json

GleifResearchResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GleifResearchResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/entity-matches/{ticker}/decisionsAppend one private reviewer attestation or unresolved decision

Signed-in website session · API keys are not accepted

Browser session only with account:read, intelligence:read, billing and issuer and indexed-history access. No query parameters. Rebuilds subject/provider evidence and compares subject and preview hashes before atomically checking expectedVersion. A confirmed decision needs a current accepted preview; unresolved saves no selected provider entity. Conflicts refuse without overwriting prior reviews. Caps are 200 revisions per user/CIK, 2000 per organization and 100000 artifact bytes. No automatic confirmation, issuer-master update, guarantee, ownership-completeness or KYC conclusion. Private notes never go to GLEIF; do not automatically retry uncertain saves.

Parameters

NameLocationRequiredType / constraintsDescription
tickerpathYesstring · pattern: "^[A-Za-z0-9.-]{1,16}$"
tickerpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

EntityMatchDecisionRequest

FieldRequiredType / constraintsDescription
stateYesstring · one of: "confirmed", "unresolved"
expectedVersionYesinteger · minimum: 0; maximum: 9007199254740991
subjectSha256Yesstring · pattern: "^[a-f0-9]{64}$"
leiNostring · pattern: "^[A-Z0-9]{18}[0-9]{2}$"Uppercase twenty-character LEI; server additionally verifies MOD 97 check digits
previewSha256Nostring · pattern: "^[a-f0-9]{64}$"
noteYesstring · minLength: 1; maxLength: 2000Nonblank private rationale; control characters except newline are rejected
acknowledgeIdentityOnlyYesboolean · const: true
Request schema
{
  "$ref": "#/components/schemas/EntityMatchDecisionRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Saved private immutable revision; reviewer state does not upgrade source verification

Response headers: Cache-Control.

Content type: application/json

EntityMatchReviewResponse

FieldRequiredType / constraintsDescription
dataYesobjectPrivate reviewer attestation; immutable until explicit owned-subject or account cleanup
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EntityMatchReviewResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Billing access is required

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Subject/preview changed

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Artifact or planned response exceeds its bound; no review saved

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 422

Source identity or integrity is invalid

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Required source/provider/review storage is unavailable; successful save is not confirmed

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /reader/filings/{accession}/section-comparisonCompare two explicitly selected retained primary-document sections

No API key required; supplied credentials can add restrictions

Deployed bounded review requiring two different accessions of the same known issuer CIK. The path accession is the after side; beforeAccession is the before side, not an assertion of chronology or amendment. Section IDs must come from current catalogs. Exact whitespace-preserving token diffs fall back to a labeled whole-section replacement above 4000 tokens per side or 1000000 token pairs; selected text above 40000 UTF-16 code units is refused, not truncated. Source completeness stays unknown and text edits do not establish disclosure, materiality, severity or legal conclusions. Uses existing structured records only; no writes, exhibits, LLM, external provider or new migration. Anonymous public reader policy applies; supplied credentials require reader:read, billing, and current issuer and indexed-history access to both sources. Rejects all query parameters, always no-store, shares the section-catalog action rate limit.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
beforeAccessionYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
beforeSectionIdYesstring · pattern: "^section-[a-f0-9]{64}$"
afterSectionIdYesstring · pattern: "^section-[a-f0-9]{64}$"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "beforeAccession",
    "beforeSectionId",
    "afterSectionId"
  ],
  "properties": {
    "beforeAccession": {
      "type": "string",
      "pattern": "^\\d{10}-\\d{2}-\\d{6}$"
    },
    "beforeSectionId": {
      "type": "string",
      "pattern": "^section-[a-f0-9]{64}$"
    },
    "afterSectionId": {
      "type": "string",
      "pattern": "^section-[a-f0-9]{64}$"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/section-comparison' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Exact selected-section text differences and bounded coverage receipt

Content type: application/json

ReaderSectionReviewResponse

FieldRequiredType / constraintsDescription
metaYesobject
dataYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderSectionReviewResponse"
}

HTTP 400

Invalid/unsupported input

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Authenticated billing access required

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

section_selection_changed; reload catalogs and choose again

HTTP 413

Selected section or response exceeds its explicit size bound

HTTP 422

Selected section or filing source metadata is unsafe

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/compare/{otherAccession}Compare aligned source-backed passages side by side

No API key required; supplied credentials can add restrictions

Supports filing-to-filing and agreement-or-amendment comparisons without severity, materiality, legal, or investment conclusions.

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
otherAccessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/compare/YOUR_OTHERACCESSION'

Responses

HTTP 200

Deterministic aligned passages and changed-word segments

Content type: application/json

ReaderComparisonResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReaderComparisonResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reader/filings/{accession}/report.pdfDownload a clean source-linked filing or comparison PDF

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
compare_toqueryNostring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/report.pdf'

Responses

HTTP 200

Bounded PDF with clickable SEC source links

Content type: application/pdf

Response schema
{
  "type": "string",
  "format": "binary"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /eventsList comparisons or first-filing baseline events

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
categoryqueryNostring · one of: "debt", "liquidity", "covenant", "going_concern"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
effective_fromqueryNostring · format: "date"
effective_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/events'

Responses

HTTP 200

Paginated source-cited event resources; severity remains unassigned

Content type: application/json

EventListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EventListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /events.csvExport authenticated evidence-backed events as CSV

API key or signed-in session

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
categoryqueryNostring · one of: "debt", "liquidity", "covenant", "going_concern"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
effective_fromqueryNostring · format: "date"
effective_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/events.csv' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Spreadsheet-safe events with accessions, filing URLs, exact evidence, verification state, and disclaimers

Content type: text/csv

Response schema
{
  "type": "string"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /facilitiesList extracted revolving-credit-facility facts

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
categoryqueryNostring · one of: "debt", "liquidity", "covenant", "going_concern"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
effective_fromqueryNostring · format: "date"
effective_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/facilities'

Responses

HTTP 200

Paginated facility facts with exact evidence

Content type: application/json

FacilityListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FacilityListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /covenantsList covenant and related legal-event signals

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
categoryqueryNostring · one of: "debt", "liquidity", "covenant", "going_concern"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
effective_fromqueryNostring · format: "date"
effective_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/covenants'

Responses

HTTP 200

Paginated candidate covenant resources with exact source evidence

Content type: application/json

CovenantListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/CovenantListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /filing-comparisonsList differences between comparable filings

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
limitqueryNointeger · minimum: 1; maximum: 100; default: 20Page size. Larger pages consume more query cost.
cursorqueryNostring · minLength: 1; maxLength: 1000Opaque nextCursor returned by the same endpoint with the same filters.
tickerqueryNostring · pattern: "^[A-Za-z0-9.-]{1,16}$"
cikqueryNostring · pattern: "^\\d{1,10}$"One to ten digits; the API left-pads it to ten digits.
formqueryNostring · one of: "10-Q", "10-Q/A", "10-K", "10-K/A", "8-K", "8-K/A", "20-F", "20-F/A", "6-K", "6-K/A", "S-1", "S-1/A", "S-3", "S-3/A", "S-4", "S-4/A", "424B1", "424B2", "424B3", "424B4", "424B5", "424B7", "424B8", "DEF 14A", "DEFA14A", "3", "3/A", "4", "4/A", "5", "5/A", "SC 13D", "SC 13D/A", "SC 13G", "SC 13G/A", "SCHEDULE 13D", "SCHEDULE 13D/A", "SCHEDULE 13G", "SCHEDULE 13G/A", "13F-HR", "13F-HR/A", "13F-NT", "13F-NT/A", "SC TO-C", "SC TO-C/A", "SC TO-I", "SC TO-I/A", "SC TO-T", "SC TO-T/A", "SC 14D9", "SC 14D9/A", "SC 13E3", "SC 13E3/A", "PREM14A", "PRER14A", "DEFM14A", "DEFM14A/A", "425"
categoryqueryNostring · one of: "debt", "liquidity", "covenant", "going_concern"
verificationqueryNostring · one of: "unverified", "candidate", "machine_checked", "verified", "illustrative"
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
effective_fromqueryNostring · format: "date"
effective_toqueryNostring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/filing-comparisons'

Responses

HTTP 200

Paginated standardized comparisons; baseline-only events are excluded

Content type: application/json

EventListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/EventListResponse"
}

HTTP 304

Representation matches If-None-Match; response has no body

Response headers: ETag, X-API-Version.

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reference-monitorsList up to 20 private saved reference selections for the signed-in user

Signed-in website session · API keys are not accepted

Browser session only with intelligence:read and billing access. No query parameters. Each returned monitor includes its source-specific check policy and next scheduled check when enabled. Inaccessible saved workspaces are omitted; provider outages do not erase retained baselines.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

User-owned monitor summaries and immutable definitions

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/reference-monitorsSave one bounded bank, entity, workspace, public-source, or New York Fed selection

Signed-in website session · API keys are not accepted

Browser session only. Definitions are immutable and the per-user cap is 20. Exact kind-specific selectors and rules are defined by the Reference Research Features contract; unknown fields and incompatible selectors are refused. Public Source Desk kinds remain unable to check until their exact source admission and credentials are active. Workspace selections require alertsEnabled false; other alerts are private and in-app only.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
kindYesstring · one of: "bank", "entity", "workspace", "cftc", "eia", "treasury_fiscal", "companies_house", "usaspending", "federal_register", "edinet", "esma", "nyfed"
nameYesstring · minLength: 1; maxLength: 120
alertsEnabledYesboolean
certsNoarray · minItems: 1; maxItems: 5
quartersNointeger · minimum: 1; maximum: 8
reportDateNostring · format: "date"
rollingNoboolean
alertRuleNoobject
tickerNostring · pattern: "^[A-Z0-9][A-Z0-9.-]{0,15}$"
leiNostring · pattern: "^[A-Z0-9]{20}$"
gleifAlertRuleNoobject
subjectCertNostring
peerCertsNoarray · maxItems: 4
startDateNostring · format: "date"
endDateNostring · format: "date"
reportFamilyNostring
marketCodeNostring · pattern: "^[A-Z0-9+]{1,12}$"
categoryNostring
cftcAlertRuleNoobject
datasetNostring
stateCodeNostring
sectorCodeNostring
fuelTypeIdNostring
seriesIdNostring
eiaAlertRuleNoobject
analystLinksNoarray · maxItems: 8
selectorNoobject
treasuryAlertRuleNoobject
companyNumberNostring · pattern: "^[A-Za-z0-9]{8}$"
companyNameNostring · maxLength: 240
linkBasisNostring · const: "analyst_confirmed_no_legal_identity_inference"
companiesHouseAlertRuleNoobject
recipientIdNostring · maxLength: 120
recipientUeiNostring · pattern: "^[A-Z0-9]{12}$"
recipientNameNostring · maxLength: 240
awardTypeCodesNoarray · maxItems: 22
usaSpendingAlertRuleNoobject
queryNostring · maxLength: 120
agencySlugsNoarray · maxItems: 5
topicSlugsNoarray · maxItems: 5
documentTypesNoarray · maxItems: 5
federalRegisterAlertRuleNoobject
workspaceTickerNostring · pattern: "^[A-Z0-9][A-Z0-9.-]{0,15}$"
manualAttachmentNoobject
edinetCodeNostring · pattern: "^E\\d{5}$"
securityCodeNostring · pattern: "^\\d{5}$"
basisNostring · one of: "analyst_confirmed_no_legal_identity_inference", "exact_lei_no_compliance_inference"
edinetAlertRuleNoobject
registerNostring · one of: "sanctions", "entities"
esmaAlertRuleNoobject
seriesNostring · one of: "sofr", "effr", "tgcr", "bgcr"
nyFedAlertRuleNoobject
Request schema
{
  "type": "object",
  "required": [
    "kind",
    "name",
    "alertsEnabled"
  ],
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "bank",
        "entity",
        "workspace",
        "cftc",
        "eia",
        "treasury_fiscal",
        "companies_house",
        "usaspending",
        "federal_register",
        "edinet",
        "esma",
        "nyfed"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "alertsEnabled": {
      "type": "boolean"
    },
    "certs": {
      "type": "array",
      "minItems": 1,
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "quarters": {
      "type": "integer",
      "minimum": 1,
      "maximum": 8
    },
    "reportDate": {
      "type": "string",
      "format": "date"
    },
    "rolling": {
      "type": "boolean"
    },
    "alertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "metric": {
          "type": "string"
        },
        "direction": {
          "type": "string",
          "enum": [
            "above",
            "below"
          ]
        },
        "threshold": {
          "type": "string"
        }
      }
    },
    "ticker": {
      "type": "string",
      "pattern": "^[A-Z0-9][A-Z0-9.-]{0,15}$"
    },
    "lei": {
      "type": "string",
      "pattern": "^[A-Z0-9]{20}$"
    },
    "gleifAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "enum": [
            "any_lei_change",
            "registration_change",
            "relationship_change",
            "successor_change"
          ]
        }
      }
    },
    "subjectCert": {
      "type": "string"
    },
    "peerCerts": {
      "type": "array",
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "startDate": {
      "type": "string",
      "format": "date"
    },
    "endDate": {
      "type": "string",
      "format": "date"
    },
    "reportFamily": {
      "type": "string"
    },
    "marketCode": {
      "type": "string",
      "pattern": "^[A-Z0-9+]{1,12}$"
    },
    "category": {
      "type": "string"
    },
    "cftcAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "metric": {
          "type": "string"
        },
        "direction": {
          "type": "string",
          "enum": [
            "above",
            "below"
          ]
        },
        "threshold": {
          "type": "string"
        }
      }
    },
    "dataset": {
      "type": "string"
    },
    "stateCode": {
      "type": "string"
    },
    "sectorCode": {
      "type": "string"
    },
    "fuelTypeId": {
      "type": "string"
    },
    "seriesId": {
      "type": "string"
    },
    "eiaAlertRule": {
      "type": "object",
      "additionalProperties": true
    },
    "analystLinks": {
      "type": "array",
      "maxItems": 8,
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "selector": {
      "type": "object",
      "additionalProperties": true
    },
    "treasuryAlertRule": {
      "type": "object",
      "additionalProperties": true
    },
    "companyNumber": {
      "type": "string",
      "pattern": "^[A-Za-z0-9]{8}$"
    },
    "companyName": {
      "type": "string",
      "maxLength": 240
    },
    "linkBasis": {
      "type": "string",
      "const": "analyst_confirmed_no_legal_identity_inference"
    },
    "companiesHouseAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "enum": [
            "new_filing",
            "status_change",
            "new_filing_or_status_change"
          ]
        }
      }
    },
    "recipientId": {
      "type": "string",
      "maxLength": 120
    },
    "recipientUei": {
      "type": "string",
      "pattern": "^[A-Z0-9]{12}$"
    },
    "recipientName": {
      "type": "string",
      "maxLength": 240
    },
    "awardTypeCodes": {
      "type": "array",
      "maxItems": 22,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "usaSpendingAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "const": "new_award"
        }
      }
    },
    "query": {
      "type": "string",
      "maxLength": 120
    },
    "agencySlugs": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "topicSlugs": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "documentTypes": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "rule",
          "proposed_rule",
          "notice",
          "presidential_document"
        ]
      }
    },
    "federalRegisterAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "const": "new_document"
        }
      }
    },
    "workspaceTicker": {
      "type": "string",
      "pattern": "^[A-Z0-9][A-Z0-9.-]{0,15}$"
    },
    "manualAttachment": {
      "type": "object",
      "additionalProperties": true
    },
    "edinetCode": {
      "type": "string",
      "pattern": "^E\\d{5}$"
    },
    "securityCode": {
      "type": "string",
      "pattern": "^\\d{5}$"
    },
    "basis": {
      "type": "string",
      "enum": [
        "analyst_confirmed_no_legal_identity_inference",
        "exact_lei_no_compliance_inference"
      ]
    },
    "edinetAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "const": "new_filing"
        }
      }
    },
    "register": {
      "type": "string",
      "enum": [
        "sanctions",
        "entities"
      ]
    },
    "esmaAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "event": {
          "type": "string",
          "enum": [
            "sanction_change",
            "authorization_change"
          ]
        }
      }
    },
    "series": {
      "type": "string",
      "enum": [
        "sofr",
        "effr",
        "tgcr",
        "bgcr"
      ]
    },
    "nyFedAlertRule": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "operator",
        "threshold"
      ],
      "properties": {
        "operator": {
          "type": "string",
          "enum": [
            "above",
            "at_or_above",
            "below",
            "at_or_below",
            "equal"
          ]
        },
        "threshold": {
          "type": "string",
          "pattern": "^-?(?:0|[1-9]\\d{0,2})(?:\\.\\d{1,6})?$"
        }
      }
    }
  },
  "additionalProperties": false,
  "description": "The server applies stricter required fields and compatibility rules selected by kind; see docs/integrations/REFERENCE_RESEARCH_FEATURES.md for the exact immutable selector and alert-rule contract."
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved private reference selection

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reference-monitors/notificationsList up to 100 private in-app reference-monitor notices within current access

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Access-filtered notification evidence

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/reference-monitors/notifications/{id}/readMark one owned private reference notice as read

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Notice marked read

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reference-monitors/{id}Read one owned saved reference after rechecking current access

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved reference identity and immutable definition

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/reference-monitors/{id}Enable or pause private checks without changing the immutable selection

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
alertsEnabledYesboolean
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "alertsEnabled"
  ],
  "properties": {
    "alertsEnabled": {
      "type": "boolean"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Updated alert state

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/reference-monitors/{id}Delete one owned saved reference and its retained private state

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Saved reference deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/reference-monitors/{id}/checkRun one owned saved reference and retain a bounded baseline or notice

Signed-in website session · API keys are not accepted

Rechecks current billing, membership, issuer and history access before and after retrieval. First successful observations establish a baseline without notifying; provider outages retain the prior baseline.

Parameters

NameLocationRequiredType / constraintsDescription
idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Change count and baseline-established state

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/open-source-researchList the eight guarded Public Source Desk features

API key or signed-in session

CFTC seven-family positioning and the existing Treasury Fiscal Data routes are admitted in r193. Four EIA datasets are admitted in r195 with a server-managed credential. Retail allows 240 rows over 60 months, generation 1000 rows over 24 months, and weekly petroleum/storage 624 rows over 1095 days. Split date windows when coverage.truncated is true; coverage.missingSeries lists requested weekly series with no observations. Provider keys are redacted from receipts. Other adapters remain default-off. Requires intelligence:read and billing access. Returns rights_review_required, credential_required or available independently for each source. A provider credential never bypasses source admission.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/open-source-research' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source catalog

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Account lacks billing access

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/open-source-research/queryQuery one admitted public source through a bounded server adapter

API key or signed-in session

Accepts only source-specific allowlisted fields. Results contain at most 20 ordinary/discovery records, bounded CFTC history, or dataset-specific EIA, Treasury, Companies House, USAspending, Federal Register and EDINET and ESMA page limits, and retain source URL, retrieval time, response hash, verification and explicit missing values. Access is rechecked after the external request. ESMA uses fixed documented machine-feed cores and allowlisted field filters; callers cannot submit Solr syntax. See CFTC admits seven report families, up to four exact markets, a 742-day span and 104 weekly observations per market. Check coverage.truncated; use shorter windows instead of treating a capped result as complete. No complete stored CFTC archive or futures price feed is implied. See docs/integrations/PUBLIC_SOURCE_RESEARCH.md.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
sourceYesstring · one of: "cftc", "eia", "treasury_fiscal", "companies_house", "usaspending", "federal_register", "edinet", "esma"
queryNostring · maxLength: 120Search text; optional for Federal Register when an agency
reportFamilyNostring · one of: "legacy_futures", "legacy_combined", "disaggregated_futures", "disaggregated_combined", "tff_futures", "tff_combined", "supplemental"
marketCodesNoarray · minItems: 1; maxItems: 4
datasetNostring · one of: "retail_sales", "generation_mix", "petroleum_stocks", "natural_gas_storage", "average_interest_rates", "debt_outstanding", "interest_expense", "fiscal_debt_cost", "company_search", "company_profile", "filing_history", "officers", "significant_control", "award_search", "award_detail", "recipient_timeline", "award_transactions", "award_composition", "federal_award_exposure", "document_search", "rule_timeline", "document_detail", "regulatory_change_report", "cited_summary", "filing_search", "filing_timeline", "filing_detail", "filing_download", "xbrl_facts", "source_translation", "directory", "prospectuses", "sanctions", "benchmarks", "funds", "entities", "lei_consistency"Dataset selector; every provider route and gated operation requires its own operational admission
startDateNostringISO date
endDateNostringISO date
stateNostring · pattern: "^(US|[A-Z]{2})$"One generation-mix location or optional USAspending state code
statesNoarray · minItems: 1; maxItems: 4Retail state codes; states × sectors is limited to four
sectorNostring · pattern: "^(99|[1-7])$"One generation-mix sector
sectorsNoarray · minItems: 1; maxItems: 4Retail sectors; states × sectors is limited to four
seriesNoarray · minItems: 1; maxItems: 4Exact weekly petroleum or natural-gas series IDs
securityDescriptionsNoarray · minItems: 1; maxItems: 4Exact Treasury average-rate security descriptions
expenseCategoryNostring · minLength: 1; maxLength: 160Exact Treasury interest-expense category
expenseGroupNostring · minLength: 1; maxLength: 160Exact Treasury interest-expense group
expenseTypesNoarray · minItems: 1; maxItems: 4Exact Treasury interest-expense types
companyNumberNostring · minLength: 8; maxLength: 8; pattern: "^[A-Za-z0-9]+"Exact Companies House company number for non-search datasets
startIndexNointeger · minimum: 0; maximum: 10000Companies House list-page start index; page size is fixed at 100 per route
awardIdNostring · minLength: 1; maxLength: 180; pattern: "^[A-Za-z0-9_.:-]+$"Exact USAspending generated award identifier
recipientIdNostring · minLength: 1; maxLength: 120Exact provider recipient ID; required for recipient timelines and exposure reports
pageNointeger · minimum: 1; maximum: 100USAspending or Federal Register bounded provider page
awardTypeCodesNoarray · maxItems: 22
agencyNostring · maxLength: 160Exact USAspending agency name
agencyTypeNostring · default: "awarding"; one of: "awarding", "funding"
agencyTierNostring · default: "toptier"; one of: "toptier", "subtier"
naicsCodesNoarray · maxItems: 10USAspending contract-only NAICS prefixes or exact codes
pscCodesNoarray · maxItems: 10USAspending contract-only PSC codes
locationScopeNostring · default: "place_of_performance"; one of: "place_of_performance", "recipient"
countryNostring · pattern: "^[A-Z]{3}$"Optional USAspending three-letter country code
countyNostring · pattern: "^\\d{3,5}$"Optional USAspending county code
agencySlugsNoarray · maxItems: 5Exact Federal Register agency slugs
topicSlugsNoarray · maxItems: 5Exact Federal Register topic slugs
documentTypesNoarray · maxItems: 5
docketIdNostring · maxLength: 80Exact Federal Register agency docket ID
rinNostring · maxLength: 40; pattern: "^[A-Z0-9-]+$"Exact Regulation Identifier Number
documentNumberNostring · maxLength: 40; pattern: "^[A-Za-z0-9]{1,12}-[A-Za-z0-9]{1,16}$"Exact Federal Register document number for detail or cited summary
dateNostring · format: "date"Exact EDINET submission-list date
filerNostring · maxLength: 120Local EDINET filer-name/code/security search text
filerCodeNostring · pattern: "^E\\d{5}$"Exact EDINET filer code
securityCodeNostring · pattern: "^\\d{5}$"Exact EDINET security code
ordinanceCodeNostring · pattern: "^\\d{3}$"Exact EDINET ordinance code
formCodeNostring · pattern: "^[A-Z0-9]{6}$"Exact EDINET form code
documentTypeCodesNoarray · maxItems: 8Exact EDINET document-type codes
documentIdNostring · pattern: "^S[A-Z0-9]{7}$"Exact EDINET document ID selected from one submission date
targetLanguageNostring · pattern: "^[A-Z]{2,8}$"Target for separately approved source-preserving EDINET metadata translation
pageSizeNointeger · minimum: 1; maximum: 100ESMA machine-feed rows per page
nameNostring · maxLength: 160Exact allowlisted ESMA reported-name filter
leiNostring · pattern: "^[A-Z0-9]{20}$"Checksum-valid exact LEI for ESMA filtering
statusNostring · maxLength: 160Exact allowlisted ESMA reported-status filter
registerNostring · one of: "sanctions", "benchmarks", "funds", "entities"ESMA register selected for a GLEIF consistency check
Request schema
{
  "type": "object",
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "properties": {
    "source": {
      "type": "string",
      "enum": [
        "cftc",
        "eia",
        "treasury_fiscal",
        "companies_house",
        "usaspending",
        "federal_register",
        "edinet",
        "esma"
      ]
    },
    "query": {
      "type": "string",
      "maxLength": 120,
      "description": "Search text; optional for Federal Register when an agency",
      "topic": null,
      "docket or RIN filter is supplied": null
    },
    "reportFamily": {
      "type": "string",
      "enum": [
        "legacy_futures",
        "legacy_combined",
        "disaggregated_futures",
        "disaggregated_combined",
        "tff_futures",
        "tff_combined",
        "supplemental"
      ]
    },
    "marketCodes": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[A-Z0-9+]{1,12}$"
      }
    },
    "dataset": {
      "type": "string",
      "enum": [
        "retail_sales",
        "generation_mix",
        "petroleum_stocks",
        "natural_gas_storage",
        "average_interest_rates",
        "debt_outstanding",
        "interest_expense",
        "fiscal_debt_cost",
        "company_search",
        "company_profile",
        "filing_history",
        "officers",
        "significant_control",
        "award_search",
        "award_detail",
        "recipient_timeline",
        "award_transactions",
        "award_composition",
        "federal_award_exposure",
        "document_search",
        "rule_timeline",
        "document_detail",
        "regulatory_change_report",
        "cited_summary",
        "filing_search",
        "filing_timeline",
        "filing_detail",
        "filing_download",
        "xbrl_facts",
        "source_translation",
        "directory",
        "prospectuses",
        "sanctions",
        "benchmarks",
        "funds",
        "entities",
        "lei_consistency"
      ],
      "description": "Dataset selector; every provider route and gated operation requires its own operational admission"
    },
    "startDate": {
      "type": "string",
      "description": "ISO date",
      "or YYYY-MM for a monthly EIA dataset": null
    },
    "endDate": {
      "type": "string",
      "description": "ISO date",
      "or YYYY-MM for a monthly EIA dataset": null
    },
    "state": {
      "type": "string",
      "pattern": "^(US|[A-Z]{2})$",
      "description": "One generation-mix location or optional USAspending state code"
    },
    "states": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^(US|[A-Z]{2})$"
      },
      "description": "Retail state codes; states × sectors is limited to four"
    },
    "sector": {
      "type": "string",
      "pattern": "^(99|[1-7])$",
      "description": "One generation-mix sector"
    },
    "sectors": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "ALL",
          "RES",
          "COM",
          "IND",
          "TRA",
          "OTH"
        ]
      },
      "description": "Retail sectors; states × sectors is limited to four"
    },
    "series": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[A-Z0-9][A-Z0-9_-]{0,63}$"
      },
      "description": "Exact weekly petroleum or natural-gas series IDs"
    },
    "securityDescriptions": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 160
      },
      "description": "Exact Treasury average-rate security descriptions"
    },
    "expenseCategory": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "description": "Exact Treasury interest-expense category"
    },
    "expenseGroup": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "description": "Exact Treasury interest-expense group"
    },
    "expenseTypes": {
      "type": "array",
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 160
      },
      "description": "Exact Treasury interest-expense types"
    },
    "companyNumber": {
      "type": "string",
      "minLength": 8,
      "maxLength": 8,
      "pattern": "^[A-Za-z0-9]+",
      "description": "Exact Companies House company number for non-search datasets"
    },
    "startIndex": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10000,
      "description": "Companies House list-page start index; page size is fixed at 100 per route"
    },
    "awardId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 180,
      "pattern": "^[A-Za-z0-9_.:-]+$",
      "description": "Exact USAspending generated award identifier"
    },
    "recipientId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "Exact provider recipient ID; required for recipient timelines and exposure reports"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "USAspending or Federal Register bounded provider page"
    },
    "awardTypeCodes": {
      "type": "array",
      "maxItems": 22,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "A",
          "B",
          "C",
          "D",
          "02",
          "03",
          "04",
          "05",
          "06",
          "07",
          "08",
          "09",
          "10",
          "11",
          "IDV_A",
          "IDV_B",
          "IDV_B_A",
          "IDV_B_B",
          "IDV_B_C",
          "IDV_C",
          "IDV_D",
          "IDV_E"
        ]
      }
    },
    "agency": {
      "type": "string",
      "maxLength": 160,
      "description": "Exact USAspending agency name"
    },
    "agencyType": {
      "type": "string",
      "enum": [
        "awarding",
        "funding"
      ],
      "default": "awarding"
    },
    "agencyTier": {
      "type": "string",
      "enum": [
        "toptier",
        "subtier"
      ],
      "default": "toptier"
    },
    "naicsCodes": {
      "type": "array",
      "maxItems": 10,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^\\d{2,6}$"
      },
      "description": "USAspending contract-only NAICS prefixes or exact codes"
    },
    "pscCodes": {
      "type": "array",
      "maxItems": 10,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[A-Z0-9]{1,4}$"
      },
      "description": "USAspending contract-only PSC codes"
    },
    "locationScope": {
      "type": "string",
      "enum": [
        "place_of_performance",
        "recipient"
      ],
      "default": "place_of_performance"
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Z]{3}$",
      "description": "Optional USAspending three-letter country code"
    },
    "county": {
      "type": "string",
      "pattern": "^\\d{3,5}$",
      "description": "Optional USAspending county code"
    },
    "agencySlugs": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
      },
      "description": "Exact Federal Register agency slugs"
    },
    "topicSlugs": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
      },
      "description": "Exact Federal Register topic slugs"
    },
    "documentTypes": {
      "type": "array",
      "maxItems": 5,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "rule",
          "proposed_rule",
          "notice",
          "presidential_document"
        ]
      }
    },
    "docketId": {
      "type": "string",
      "maxLength": 80,
      "description": "Exact Federal Register agency docket ID"
    },
    "rin": {
      "type": "string",
      "maxLength": 40,
      "pattern": "^[A-Z0-9-]+$",
      "description": "Exact Regulation Identifier Number"
    },
    "documentNumber": {
      "type": "string",
      "maxLength": 40,
      "pattern": "^[A-Za-z0-9]{1,12}-[A-Za-z0-9]{1,16}$",
      "description": "Exact Federal Register document number for detail or cited summary"
    },
    "date": {
      "type": "string",
      "format": "date",
      "description": "Exact EDINET submission-list date"
    },
    "filer": {
      "type": "string",
      "maxLength": 120,
      "description": "Local EDINET filer-name/code/security search text"
    },
    "filerCode": {
      "type": "string",
      "pattern": "^E\\d{5}$",
      "description": "Exact EDINET filer code"
    },
    "securityCode": {
      "type": "string",
      "pattern": "^\\d{5}$",
      "description": "Exact EDINET security code"
    },
    "ordinanceCode": {
      "type": "string",
      "pattern": "^\\d{3}$",
      "description": "Exact EDINET ordinance code"
    },
    "formCode": {
      "type": "string",
      "pattern": "^[A-Z0-9]{6}$",
      "description": "Exact EDINET form code"
    },
    "documentTypeCodes": {
      "type": "array",
      "maxItems": 8,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^\\d{3}$"
      },
      "description": "Exact EDINET document-type codes"
    },
    "documentId": {
      "type": "string",
      "pattern": "^S[A-Z0-9]{7}$",
      "description": "Exact EDINET document ID selected from one submission date"
    },
    "targetLanguage": {
      "type": "string",
      "pattern": "^[A-Z]{2,8}$",
      "description": "Target for separately approved source-preserving EDINET metadata translation"
    },
    "pageSize": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "ESMA machine-feed rows per page"
    },
    "name": {
      "type": "string",
      "maxLength": 160,
      "description": "Exact allowlisted ESMA reported-name filter"
    },
    "lei": {
      "type": "string",
      "pattern": "^[A-Z0-9]{20}$",
      "description": "Checksum-valid exact LEI for ESMA filtering",
      "consistency or monitoring": null
    },
    "status": {
      "type": "string",
      "maxLength": 160,
      "description": "Exact allowlisted ESMA reported-status filter"
    },
    "register": {
      "type": "string",
      "enum": [
        "sanctions",
        "benchmarks",
        "funds",
        "entities"
      ],
      "description": "ESMA register selected for a GLEIF consistency check"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/open-source-research/query' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Bounded source observations with coverage

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Account lacks billing access

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/open-source-research/coverageRead source admission and organization retrieval coverage

API key or signed-in session

Returns each configured source dataset's admission state, source-native freshness policy, request/cache/check targets, and this organization's last observed status, attempt, successful retrieval, returned count, truncation state, bounded gap codes and provider-response hashes. Targets are operating policy, not contractual SLAs. Null remains unknown; an empty successful retrieval is distinct from failure. The response does not prove provider uptime or complete dataset coverage.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/open-source-research/coverage' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Private organization source-coverage dashboard

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/open-source-research/reportBuild a signed report from selected SEC evidence and public-source observations

API key or signed-in session

Re-reads up to ten exact accessions under current issuer and indexed-history access and re-runs up to four admitted Public Source Desk queries. SEC and external sections retain independent dates, evidence, verification states, coverage and receipts. The returned HMAC-bound report can be frozen through the research-snapshot API by the same signed-in user.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
titleYesstring · minLength: 1; maxLength: 120
tickerYesstring · pattern: "^[A-Z0-9][A-Z0-9.-]{0,15}$"
accessionsYesarray · maxItems: 10
sourceQueriesYesarray · maxItems: 4
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "title",
    "ticker",
    "accessions",
    "sourceQueries"
  ],
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "ticker": {
      "type": "string",
      "pattern": "^[A-Z0-9][A-Z0-9.-]{0,15}$"
    },
    "accessions": {
      "type": "array",
      "maxItems": 10,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^\\d{10}-\\d{2}-\\d{6}$"
      }
    },
    "sourceQueries": {
      "type": "array",
      "maxItems": 4,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "description": "One exact request accepted by /account/open-source-research/query"
      }
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/open-source-research/report' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Signed source-separated report with exact content SHA-256

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 413

Representation exceeds the configured response-size limit

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/open-source-research/edinet/downloadDownload one independently admitted EDINET document artifact

API key or signed-in session

The r93 route is deployed but remains unavailable without the separately admitted EDINET document scope. Requires authentication, intelligence:read, billing, an active v9 EDINET metadata and document-route admission, and explicit document-download approval. The server re-resolves the document from its submission date, checks provider status and artifact flags, caps the response at 30 MB, refuses redirects/unexpected types, and rechecks current access after retrieval. Response headers expose source retrieval time and SHA-256.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
dateYesstring · format: "date"
documentIdYesstring · pattern: "^S[A-Z0-9]{7}$"
artifactYesstring · one of: "filing", "pdf", "attachments", "english", "csv"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "date",
    "documentId",
    "artifact"
  ],
  "properties": {
    "date": {
      "type": "string",
      "format": "date"
    },
    "documentId": {
      "type": "string",
      "pattern": "^S[A-Z0-9]{7}$"
    },
    "artifact": {
      "type": "string",
      "enum": [
        "filing",
        "pdf",
        "attachments",
        "english",
        "csv"
      ]
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/account/open-source-research/edinet/download' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Exact bounded artifact with X-Source-Retrieved-At and X-Source-SHA256 headers

Response headers: X-Source-Retrieved-At, X-Source-SHA256.

Content type: application/pdf

Response schema
{
  "type": "string",
  "format": "binary"
}

Content type: application/zip

Response schema
{
  "type": "string",
  "format": "binary"
}

Content type: application/octet-stream

Response schema
{
  "type": "string",
  "format": "binary"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

Account lacks billing access

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Selected EDINET document or artifact is not currently retrievable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Pilots (3)
GET /account/pilotsReturn the signed-in organization's private pilot ledger and aggregate

Signed-in website session · API keys are not accepted

Browser session required. The response measures paired task time, missed evidence, unsupported facts, and observed return use. It is not a public customer or product-performance claim.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Organization-scoped private pilot portfolio

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/pilots/{pilot_id}/observationsAppend one paired task and evidence/fact audit observation

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
pilot_idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
observedAtNostring · format: "date-time"Defaults to server time; limited to the prior 90 days and five minutes into the future.
eventTypeYesstring · minLength: 1; maxLength: 80
issuerAliasYesstring · minLength: 1; maxLength: 80
minutesWithoutFilingSiftYesnumber · maximum: 1440; exclusiveMinimum: 0
minutesWithFilingSiftYesnumber · maximum: 1440; exclusiveMinimum: 0
expectedEvidenceCountYesinteger · minimum: 0; maximum: 10000
missedEvidenceCountYesinteger · minimum: 0; maximum: 10000
assertedFactCountYesinteger · minimum: 0; maximum: 10000
unsupportedFactCountYesinteger · minimum: 0; maximum: 10000
accessionNostring · pattern: "^[0-9]{10}-[0-9]{2}-[0-9]{6}$"
filingUrlNostring · format: "uri"
evidenceTextNostring · minLength: 1; maxLength: 2000
verificationStateNostring · one of: "machine_checked", "human_verified", "rejected", "uncertain"
decisionRelevantNoboolean | null
noteNostring · maxLength: 1000
Request schema
{
  "type": "object",
  "required": [
    "eventType",
    "issuerAlias",
    "minutesWithoutFilingSift",
    "minutesWithFilingSift",
    "expectedEvidenceCount",
    "missedEvidenceCount",
    "assertedFactCount",
    "unsupportedFactCount"
  ],
  "properties": {
    "observedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Defaults to server time; limited to the prior 90 days and five minutes into the future."
    },
    "eventType": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "issuerAlias": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "minutesWithoutFilingSift": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 1440
    },
    "minutesWithFilingSift": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 1440
    },
    "expectedEvidenceCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10000
    },
    "missedEvidenceCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10000
    },
    "assertedFactCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10000
    },
    "unsupportedFactCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10000
    },
    "accession": {
      "type": "string",
      "pattern": "^[0-9]{10}-[0-9]{2}-[0-9]{6}$"
    },
    "filingUrl": {
      "type": "string",
      "format": "uri"
    },
    "evidenceText": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "verificationState": {
      "type": "string",
      "enum": [
        "machine_checked",
        "human_verified",
        "rejected",
        "uncertain"
      ]
    },
    "decisionRelevant": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "note": {
      "type": "string",
      "maxLength": 1000
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Append-only observation recorded

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/pilots/enrollmentCheck enrollment in the private pilot-measurement workflow

Signed-in website session · API keys are not accepted

Required scopes: account:read. Account, role and source checks still apply.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Organization enrollment status; does not enroll or activate a feature

HTTP 401

Authentication required

HTTP 403

Browser session required

Link to this operation · Download the contract

Reference (8)
GET /account/reference-historyQuery stored historical reference records

API key or signed-in session

Requires API-key or browser-session authentication, intelligence:read and active billing access (including eligible Free accounts). Stored records only. Start/end are inclusive ISO dates, from 1900-01-01 through today, with at most 3660 days between endpoints. Fixed 100-record pages; no limit, offset or ticker parameter. Follow data.pagination.nextCursor with identical filters. A 409 reference_history_changed requires discarding the partial result and restarting without a cursor. Latest retrieved revisions, not historical publication-time data. Private queries enforce referenceHistoryDays; stored archive depth does not override account access. BIS queries must use the public route. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryYesstring · one of: "fdic_financials", "fdic_institutions", "ofr_repo", "ofr_stress", "gleif", "treasury_debt", "treasury_rates", "treasury_expense", "treasury_mspd"
startDatequeryYesstring · format: "date"
endDatequeryYesstring · format: "date"
entityqueryNostring · maxLength: 600Exact identifier from /entities. Omit to query all retained identifiers. This is not a ticker or CIK.
cursorqueryNostring · maxLength: 2400

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/reference-history' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'dataset=YOUR_DATASET' \
  --data-urlencode 'startDate=YOUR_STARTDATE' \
  --data-urlencode 'endDate=YOUR_ENDDATE'

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryQueryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryQueryResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

reference_history_changed: accepted snapshot manifest changed or the cursor belongs to different filters. Restart the entire query.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reference-history/catalogInspect historical reference dataset coverage

API key or signed-in session

Requires API-key or browser-session authentication, intelligence:read and active billing access (including eligible Free accounts). Returns dataset definitions and dataset-wide aggregate window counts, not individual windows or filtered earliest observations. Lists enabled datasets including BIS; use its public query route. Catalog visibility does not grant access to older private records. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/reference-history/catalog' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryCatalogResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/reference-history/entitiesFind historical reference identifiers

API key or signed-in session

Requires API-key or browser-session authentication, intelligence:read and active billing access (including eligible Free accounts). Find exact source-native identifiers by dataset and optional search, with at most 30 matches. Narrow search when truncated; no cursor. FDIC financial identifiers are drawn from the current bank directory, so historical closed banks may be absent. Identifier discovery does not grant access to older private records. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryYesstring · one of: "fdic_financials", "fdic_institutions", "ofr_repo", "ofr_stress", "bis", "gleif", "treasury_debt", "treasury_rates", "treasury_expense", "treasury_mspd"
searchqueryNostring · maxLength: 100Exact identifier or case-insensitive label substring. Omit for the first 30 identifiers.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/account/reference-history/entities' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'dataset=YOUR_DATASET'

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryEntitiesResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryEntitiesResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 402

The requested paid plan lacks an active subscription entitlement

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/bis/historyQuery stored historical reference records

No API key required; supplied credentials can add restrictions

Free public BIS history, without credentials or paid metering. Stored records only. Start/end are inclusive ISO dates, from 1900-01-01 through today, with at most 3660 days between endpoints. Fixed 100-record pages; no limit, offset or ticker parameter. Follow data.pagination.nextCursor with identical filters. A 409 reference_history_changed requires discarding the partial result and restarting without a cursor. Latest retrieved revisions, not historical publication-time data. Dataset defaults to bis; no other dataset is accepted. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryNostring · one of: "bis"
startDatequeryYesstring · format: "date"
endDatequeryYesstring · format: "date"
entityqueryNostring · maxLength: 600Exact identifier from /entities. Omit to query all retained identifiers. This is not a ticker or CIK.
cursorqueryNostring · maxLength: 2400

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/bis/history' \
  --data-urlencode 'startDate=YOUR_STARTDATE' \
  --data-urlencode 'endDate=YOUR_ENDDATE'

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryQueryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryQueryResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

reference_history_changed: accepted snapshot manifest changed or the cursor belongs to different filters. Restart the entire query.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/bis/history/catalogInspect historical reference dataset coverage

No API key required; supplied credentials can add restrictions

Free public BIS history, without credentials or paid metering. Returns dataset definitions and dataset-wide aggregate window counts, not individual windows or filtered earliest observations. Only BIS is returned. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/bis/history/catalog'

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryCatalogResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/bis/history/entitiesFind historical reference identifiers

No API key required; supplied credentials can add restrictions

Free public BIS history, without credentials or paid metering. Find exact source-native identifiers by dataset and optional search, with at most 30 matches. Narrow search when truncated; no cursor. FDIC financial identifiers are drawn from the current bank directory, so historical closed banks may be absent. dataset=bis is required here. Cache-Control: no-store. The three routes share a 20-request/minute action limit per organization (private) or IP (public), plus applicable platform limits.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryYesstring · one of: "bis"
searchqueryNostring · maxLength: 100Exact identifier or case-insensitive label substring. Omit for the first 30 identifiers.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/bis/history/entities' \
  --data-urlencode 'dataset=YOUR_DATASET'

Responses

HTTP 200

Stored reference response with source and coverage information.

Content type: application/json

ReferenceHistoryEntitiesResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/ReferenceHistoryEntitiesResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/bis/creditRetrieve the compatible public BIS credit and debt-service context

No API key required; supplied credentials can add restrictions

Free and unmetered. r93 retains this original two-series, one-country route for compatibility; use /reference/bis/compare for the deployed six-dataflow, 42-reference-area contract and one-to-four-country comparisons. One to 20 completed quarters and abuse limits apply.

Parameters

NameLocationRequiredType / constraintsDescription
countryqueryYesstring · minLength: 2; maxLength: 2
startQuarterqueryYesstring · pattern: "^(19|20)[0-9]{2}-Q[1-4]$"
endQuarterqueryYesstring · pattern: "^(19|20)[0-9]{2}-Q[1-4]$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/bis/credit' \
  --data-urlencode 'country=YOUR_COUNTRY' \
  --data-urlencode 'startQuarter=YOUR_STARTQUARTER' \
  --data-urlencode 'endQuarter=YOUR_ENDQUARTER'

Responses

HTTP 200

Free public BIS credit-to-GDP and debt-service response with source receipts

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /reference/bis/compareCompare one exact BIS dataset and sector across one to four countries

No API key required; supplied credentials can add restrictions

Free and unmetered. Select up to four of 42 supported areas, one measure and up to 20 completed quarters from 1970 onward. Actual inception varies; debt-service ratios start no earlier than 1999. Responses retain missing/confidential states, source receipts, and a dataset-specific comparability warning; country ranking is prohibited.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryYesstring · one of: "total_credit", "debt_service", "credit_gap", "property_price", "debt_securities", "foreign_exchange"
sectorqueryYesstring · one of: "P", "N", "H", "G", "ALL", "REAL", "S1", "S11", "S12", "S13"Must be compatible with the selected dataset. Property-price ALL is nominal; REAL is CPI-deflated, both indexed to 2010=100.
countriesqueryYesstring · pattern: "^[A-Z0-9]{2}(,[A-Z0-9]{2}){0,3}$"One to four distinct comma-separated supported reference-area codes.
startQuarterqueryYesstring · pattern: "^(19|20)[0-9]{2}-Q[1-4]$"
endQuarterqueryYesstring · pattern: "^(19|20)[0-9]{2}-Q[1-4]$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/reference/bis/compare' \
  --data-urlencode 'dataset=YOUR_DATASET' \
  --data-urlencode 'sector=YOUR_SECTOR' \
  --data-urlencode 'countries=YOUR_COUNTRIES' \
  --data-urlencode 'startQuarter=YOUR_STARTQUARTER' \
  --data-urlencode 'endQuarter=YOUR_ENDQUARTER'

Responses

HTTP 200

One exact series definition per selected country with warnings

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Search (21)
GET /search/vocabularyList supported search filters, synonyms, screens, and matrix metrics

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/search/vocabulary'

Responses

HTTP 200

Search vocabulary

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /searchSearch indexed filing and material-exhibit passages

No API key required; supplied credentials can add restrictions

Supports Boolean, quoted phrase, NEAR/1-20 proximity, bounded wildcard, and financing-aware synonym queries. Results retain accession, SEC URL, exact evidence snippet, locator, hash, and verification state.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SearchRequest

FieldRequiredType / constraintsDescription
queryYesstring · minLength: 1; maxLength: 500
useSynonymsNoboolean · default: true
limitNointeger · minimum: 1; maximum: 100; default: 20
filtersNoobject
Request schema
{
  "$ref": "#/components/schemas/SearchRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/search' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Bounded evidence-backed results

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /search/market/vocabularyList market search filters, universes, sections, and screens

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/search/market/vocabulary'

Responses

HTTP 200

Market search vocabulary

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

GET /catalog/filingsFilter source-observed SEC filing metadata without extracting every document

API key or signed-in session

Authenticated read-only catalog of supported SEC filing metadata. Requires search:read, billing entitlement, and applies the organization's history start. Every row retains accession, SEC filing URLs, the exact master-index evidence line, source-index URL and source-observed verification state. Quarterly population runs independently from document extraction. Every returned accession/CIK association has exactly one coverage state: indexed, extracted, pending, failed, unsupported, or policy_excluded, plus a reason. A current zero-passage search checkpoint remains indexed and is reported separately from missing or stale indexing. The response also includes the latest full-catalog reconciliation receipt; its accepted state and reason counts must equal the completed-import association denominator. Catalog completeness is based on exact completed/running/failed/missing quarter reconciliation and the current SEC admission version. Follow the opaque keyset cursor with unchanged filters. Results are private and no-store.

Parameters

NameLocationRequiredType / constraintsDescription
tickerqueryNostring · maxLength: 16
cikqueryNostring · pattern: "^\\d{1,10}$"
formsqueryNostringComma-separated supported SEC forms; at most 20
filed_fromqueryNostring · format: "date"
filed_toqueryNostring · format: "date"
limitqueryNointeger · minimum: 1; maximum: 100; default: 50
cursorqueryNostring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/catalog/filings' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source-observed filing metadata, import completeness, limitations, and continuation

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /search/marketSearch indexed SEC filing and selected material-exhibit passages without a watchlist

No API key required; supplied credentials can add restrictions

Deployed route. Public requests are allowed; supplied credentials require search:read and billing access and allow all available indexed history across plans. PostgreSQL reads at most 500 candidate passages plus one lookahead and returns at most 100 results; other stores retain a 25000-passage logical ceiling. An empty page can still carry a continuation cursor. Follow data.pagination.nextCursor with unchanged normalized filters. data.coverageReceipt records observed inventory, inspected execution, gap samples, bounds and hashes. The expected SEC denominator is unknown. PostgreSQL reads each request consistently, but pages are not a frozen edition. Unprocessed filings and nonindexed attachments are outside coverage; an empty match set is not proof of an absent disclosure.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

MarketSearchRequest

FieldRequiredType / constraintsDescription
queryYesstring · minLength: 1; maxLength: 500
useSynonymsNoboolean · default: true
limitNointeger · minimum: 1; maximum: 100; default: 20
cursorNostring | null
formatNostring · default: "csv"; one of: "csv", "ndjson", "json"Used by the market-search export endpoint only
filtersNoobjectMarket filters have their own normalized bounds, distinct from the legacy SearchFilters contract
Request schema
{
  "$ref": "#/components/schemas/MarketSearchRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/search/market' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Cursor-paginated source-linked market results and a query-specific coverage receipt

Content type: application/json

MarketResearchResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MarketResearchResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /search/market/exportExport one cursor chunk as CSV, NDJSON, or a JSON coverage bundle

No API key required; supplied credentials can add restrictions

Deployed bounded receipt support follows the same optional authentication and history policy as market search. Exports at most 100 rows; each export performs a new search, not a replay of a prior result. CSV/NDJSON row columns are unchanged and carry a compact coverage summary in headers. JSON directly returns rows, the full coverageReceipt and pagination plus schemaVersion and rowsSha256 without a data/meta envelope. The row hash covers flattened export records; coverageReceipt.resultSha256 instead identifies the full search results.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

MarketSearchRequest

FieldRequiredType / constraintsDescription
queryYesstring · minLength: 1; maxLength: 500
useSynonymsNoboolean · default: true
limitNointeger · minimum: 1; maximum: 100; default: 20
cursorNostring | null
formatNostring · default: "csv"; one of: "csv", "ndjson", "json"Used by the market-search export endpoint only
filtersNoobjectMarket filters have their own normalized bounds, distinct from the legacy SearchFilters contract
Request schema
{
  "$ref": "#/components/schemas/MarketSearchRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/search/market/export' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Cursor-chunked export with observed coverage metadata; no complete SEC denominator or pinned cross-page edition

Response headers: X-Next-Cursor, X-Export-Row-Count, X-Export-Truncated, X-Coverage-Receipt, X-Coverage-Receipt-SHA256.

Content type: text/csv

Response schema
{
  "type": "string"
}

Content type: application/x-ndjson

Response schema
{
  "type": "string"
}

Content type: application/json

MarketSearchExportBundle

FieldRequiredType / constraintsDescription
schemaVersionYesstring · const: "filingsift-market-search-export-v1"
rowsSha256Yesstring · pattern: "^[a-f0-9]{64}$"SHA-256 of the exported row array using recursively sorted object keys and preserved array order
rowsYesarray · maxItems: 100Existing export columns accession, filed_at, form, cik, ticker, filer, section_topic, title, evidence_text, source_url, source_locator and verification_state
coverageReceiptYesobjectDeployed market search/screen receipt. This is evidence of observed inventory and bounded execution, not complete SEC coverage, semantic recall, fact absence, human verification or historical replay. Canonical hashing recursively sorts object keys and preserves array order; receiptSha256 hashes this object with receiptSha256 omitted.
paginationYesobject
Response schema
{
  "$ref": "#/components/schemas/MarketSearchExportBundle"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /search/similar-clausesFind deterministically similar indexed clauses

No API key required; supplied credentials can add restrictions

Optional credentials require search:read and billing access and apply account history. Jaccard token similarity is a language-overlap measure, not a legal or financial equivalence conclusion.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
accessionYesstring
passageIdYesstring
modeNostring · default: "clause"; one of: "clause", "document_template"
minimumSimilarityNonumber · minimum: 0.2; maximum: 1
sameSectionTopicNoboolean
sameDocumentTypeNoboolean
limitNointeger · minimum: 1; maximum: 100
Request schema
{
  "type": "object",
  "required": [
    "accession",
    "passageId"
  ],
  "properties": {
    "accession": {
      "type": "string"
    },
    "passageId": {
      "type": "string"
    },
    "mode": {
      "type": "string",
      "enum": [
        "clause",
        "document_template"
      ],
      "default": "clause"
    },
    "minimumSimilarity": {
      "type": "number",
      "minimum": 0.2,
      "maximum": 1
    },
    "sameSectionTopic": {
      "type": "boolean"
    },
    "sameDocumentType": {
      "type": "boolean"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/search/similar-clauses' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Similar passages with exact SEC provenance

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

GET /search/market/coverageGet market search index coverage and freshness

No API key required; supplied credentials can add restrictions

Public aggregate index coverage. Supplied credentials require search:read and billing access; this aggregate is not narrowed to watched issuers.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/search/market/coverage'

Responses

HTTP 200

Filing and passage coverage

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

POST /reader/filings/{accession}/searchSearch one indexed filing and its material exhibits

No API key required; supplied credentials can add restrictions

Parameters

NameLocationRequiredType / constraintsDescription
accessionpathYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
accessionpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

SearchRequest

FieldRequiredType / constraintsDescription
queryYesstring · minLength: 1; maxLength: 500
useSynonymsNoboolean · default: true
limitNointeger · minimum: 1; maximum: 100; default: 20
filtersNoobject
Request schema
{
  "$ref": "#/components/schemas/SearchRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/reader/filings/YOUR_ACCESSION/search' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Bounded evidence-backed results within one accession

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /screens/marketRun registration, offering, ownership, governance, or auditor-change screens

No API key required; supplied credentials can add restrictions

Deployed route. Public requests are allowed; supplied credentials require search:read and billing access and apply account history. Results carry the same observed-only coverage receipt as market search. Inventory is scoped before screen inclusion and passage filters; no match does not establish that the issuer has no such event. Receipt support does not extend to financing screens, matrices, similarity or peer groups.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

MarketScreenRequest

FieldRequiredType / constraintsDescription
kindNostring · const: "market"
screenYesstring · one of: "registration", "offering", "ownership", "governance", "auditor_change"
queryNostring · minLength: 1; maxLength: 500
useSynonymsNoboolean · default: true
limitNointeger · minimum: 1; maximum: 100; default: 20
cursorNostring | null
filtersNoobjectMarket filters have their own normalized bounds, distinct from the legacy SearchFilters contract
Request schema
{
  "$ref": "#/components/schemas/MarketScreenRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/screens/market' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked deterministic screen matches and coverage receipt

Content type: application/json

MarketResearchResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/MarketResearchResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /screens/peer-groupsBuild mechanical SIC and exchange peer groups

No API key required; supplied credentials can add restrictions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
sicPrefixNostringSIC prefix used to select mechanical peers.
exchangeNostring
Request schema
{
  "type": "object",
  "properties": {
    "sicPrefix": {
      "type": "string",
      "description": "SIC prefix used to select mechanical peers."
    },
    "exchange": {
      "type": "string"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/screens/peer-groups' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Reusable peer groups

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

Link to this operation · Download the contract

POST /screens/financingScreen latest eligible issuer filings for financing facts or events

No API key required; supplied credentials can add restrictions

Ticker, form, filed-date and verification filters are enforced. Verification applies to each returned fact or signal rather than only the filing aggregate. Numeric bounds apply to maturityYear for the maturity screen; otherwise they apply only to a retained numeric value, threshold or ratio and exclude nonnumeric signals. Market-search event filters are not accepted by this operation.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FinancingScreenRequest

FieldRequiredType / constraintsDescription
screenYesstring · one of: "lifecycle", "maturity", "liquidity", "availability", "covenant", "default"
limitNointeger · minimum: 1; maximum: 100; default: 50
filtersNoobject
Request schema
{
  "$ref": "#/components/schemas/FinancingScreenRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/screens/financing' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Evidence-backed lifecycle

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /screens/comparison-matrixCompare selected financing metrics across at most 20 issuers

No API key required; supplied credentials can add restrictions

For each issuer, selects the latest form/date-eligible filing containing at least one requested metric at the requested evidence-validation state. The validation filter applies to metric evidence rather than only the filing aggregate. Missing cells are returned as unavailable with null value and never coerced to zero.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

ComparisonMatrixRequest

FieldRequiredType / constraintsDescription
tickersYesarray · minItems: 1; maxItems: 20
metricsYesarray · minItems: 1; maxItems: 10
filtersNoobject
Request schema
{
  "$ref": "#/components/schemas/ComparisonMatrixRequest"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/screens/comparison-matrix' \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Evidence-backed issuer-by-metric matrix

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/saved-searchesList the signed-in user's personal saved searches

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Personal saved searches

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/saved-searchesCreate a personal saved search and optional Monitoring email alert

Signed-in website session · API keys are not accepted

Browser session required. Organizations may maintain at most 50 saved searches and screens combined, enforced atomically.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SavedSearchCreateRequest

Request schema
{
  "$ref": "#/components/schemas/SavedSearchCreateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Saved search created

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/saved-searches/{savedSearchId}Update a personal saved search

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
savedSearchIdpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

SavedSearchUpdateRequest

FieldRequiredType / constraintsDescription
nameNostring · minLength: 1; maxLength: 120
queryNostring · minLength: 1; maxLength: 500
useSynonymsNoboolean
filtersNoobject
alertEnabledNoboolean
visibilityNostring · one of: "personal", "team"
Request schema
{
  "$ref": "#/components/schemas/SavedSearchUpdateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved search updated

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/saved-searches/{savedSearchId}Delete a personal saved search

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
savedSearchIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Saved search deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/saved-screensList personal and team-visible saved financing screens

Signed-in website session · API keys are not accepted

Browser session required.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved financing screens

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/saved-screensSave a financing screen for repeatable research

Signed-in website session · API keys are not accepted

Browser session required. The atomic organization limit is 50 saved searches and screens combined. Saved-screen alerts are opt-in and go to the creator for newly indexed matches after saving. Organization Monitoring must be enabled; its delivery schedule and quiet hours apply.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SavedScreenCreateRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 120
requestYesoneOf
alertEnabledNoboolean · default: falseOpt in to creator-only alerts for newly indexed matching filings; requires enabled organization Monitoring.
visibilityNostring · default: "personal"; one of: "personal", "team"
Request schema
{
  "$ref": "#/components/schemas/SavedScreenCreateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Saved screen created

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/saved-screens/{savedScreenId}Update a creator-owned saved financing screen

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
savedScreenIdpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

SavedScreenUpdateRequest

FieldRequiredType / constraintsDescription
nameNostring · minLength: 1; maxLength: 120
requestNooneOf
alertEnabledNobooleanEnable or disable prospective saved-screen alerts. Editing or disabling a screen suppresses queued alerts from its previous revision.
visibilityNostring · one of: "personal", "team"
Request schema
{
  "$ref": "#/components/schemas/SavedScreenUpdateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Saved screen updated

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/saved-screens/{savedScreenId}Delete a creator-owned saved financing screen

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
savedScreenIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Saved screen deleted

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

SEC Datasets (8)
GET /sec-datasets/history-coverageReconcile company filing coverage by form and year

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Authenticated search-read access. Counts use retained SEC master-index accession/CIK associations; absent combinations do not prove no filings existed.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryYesstring · pattern: "^[0-9]{1,10}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/sec-datasets/history-coverage' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'cik=YOUR_CIK'

Responses

HTTP 200

Source-index counts grouped by extraction and search-index state

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

POST /sec-datasets/research/filingRead structured observations from an exact source filing

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Requires dataset, cik, accession and sourceSha256. Source values and evidence are retained. Partial source status is explicit; large selections are refused rather than silently truncated.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

SecSourceSelection

FieldRequiredType / constraintsDescription
datasetYesstringUse an identifier returned by /sec-datasets/catalog.
cikYesstring · pattern: "^[0-9]{1,10}$"
accessionYesstring
sourceSha256Yesstring · pattern: "^[a-f0-9]{64}$"Copy the exact retained source version from the selected source record.
Request schema
{
  "$ref": "#/components/schemas/SecSourceSelection"
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/sec-datasets/research/filing' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source metadata

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 413

Selection or response exceeds the interactive limit

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

POST /sec-datasets/research/compareCompare two explicit fund, institutional or offering disclosures

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Authenticated search-read access. Both source selections require dataset, cik, accession and sourceSha256. Mode is changes or overlap. Partial imports, ambiguous security identities and unlinked amendments suppress comparisons. Missing positions do not become zero.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
leftYesobject
rightYesobject
modeNostring · default: "changes"; one of: "changes", "overlap"
Request schema
{
  "type": "object",
  "required": [
    "left",
    "right"
  ],
  "properties": {
    "left": {
      "$ref": "#/components/schemas/SecSourceSelection"
    },
    "right": {
      "$ref": "#/components/schemas/SecSourceSelection"
    },
    "mode": {
      "type": "string",
      "enum": [
        "changes",
        "overlap"
      ],
      "default": "changes"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/sec-datasets/research/compare' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Source-linked differences or explicit comparison issues

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 413

Selection or response exceeds the interactive limit

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

POST /sec-datasets/research/disclosuresCompare two explicitly selected financial source rows

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Each left/right selection supplies dataset, cik, accession, sourceSha256 and recordKey. Exact differences require matching concept, taxonomy, unit, issuer, duration and dimensions. Same-period conflicts have no winning value.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
leftYesschema
rightYesschema
Request schema
{
  "type": "object",
  "required": [
    "left",
    "right"
  ],
  "properties": {
    "left": {
      "$ref": "#/components/schemas/SecDisclosureSelection"
    },
    "right": {
      "$ref": "#/components/schemas/SecDisclosureSelection"
    }
  }
}

Create request.json using the request fields below. Replace YOUR_… with identifiers from your available records. Check the operation description before sending: writes can change your workspace or trigger delivery. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --request POST 'https://api.filingsift.com/api/v1/sec-datasets/research/disclosures' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  -H 'Content-Type: application/json' \
  --data @request.json

Responses

HTTP 200

Selected disclosures

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 404

Selected source row not found

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

GET /sec-datasets/supplements/catalogList supplemental SEC source families and import states

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Requires authentication, search read scope and billing access. Counts include explicit holds and gaps.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/sec-datasets/supplements/catalog' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Source families and partial coverage

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

GET /sec-datasets/supplements/recordsSearch supplemental SEC source evidence

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Requires authentication, search read scope and billing access. Enter a CIK or at least three search characters. Returns up to 25 passages or source rows, with source URL, hash, version, locator and source_reported_unverified state. EDGAR records retain accession and CIK; adviser snapshots retain null when those identifiers are not supplied. Text search matches all words within one passage. Coverage is partial; no inferred ownership or completed-sale claims. Cursor binds filters and import watermark.

Parameters

NameLocationRequiredType / constraintsDescription
familyqueryYesstring · one of: "comment_letters", "form_144", "subsidiary_exhibits", "adviser_history"
cikqueryNostring · pattern: "^[0-9]{1,10}$"
qqueryNostring · maxLength: 200
cursorqueryNostring · maxLength: 800

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/sec-datasets/supplements/records' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'family=YOUR_FAMILY'

Responses

HTTP 200

Source evidence

HTTP 400

Invalid filters or cursor

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

GET /sec-datasets/catalogList SEC bulk datasets and partial import coverage

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Requires authentication and search read scope. Source rows are separate from verified XBRL facts and corporate-event totals.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/sec-datasets/catalog' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY"

Responses

HTTP 200

Dataset names and counts by import state

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

GET /sec-datasets/recordsRetrieve imported SEC source rows for a CIK

API key or signed-in session

Required scopes: search:read. Account, role and source checks still apply.

Returns up to 50 records and a bounded response with original source text, filing accession and URL, exact archive hash, source row locator, related definitions and source_reported_unverified state. Numeric values retain their original strings and units; blanks remain null. Coverage is partial. Do not sum overlapping filings or snapshots. Database cursors bind filters and an import watermark; opaque archive cursors bind exact source filters. Requires authentication and search read scope.

Parameters

NameLocationRequiredType / constraintsDescription
datasetqueryYesstring · one of: "financial_statement_notes", "insider_transactions", "institutional_holdings", "fund_portfolios", "private_offerings"
cikqueryYesstring · pattern: "^[0-9]{1,10}$"
tablequeryNostring · maxLength: 80
accessionqueryNostring · pattern: "^[0-9]{10}-[0-9]{2}-[0-9]{6}$"
cursorqueryNostring · maxLength: 800

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/sec-datasets/records' \
  -H "Authorization: Bearer $FILINGSIFT_API_KEY" \
  --data-urlencode 'dataset=YOUR_DATASET' \
  --data-urlencode 'cik=YOUR_CIK'

Responses

HTTP 200

Source records

HTTP 400

Invalid filters or cursor

HTTP 401

Authentication required

HTTP 402

Current account billing access required

HTTP 403

Required scope or resource access denied

HTTP 422

Source row exceeds response bound; original source links are returned

HTTP 429

Request or dataset query limit reached

Link to this operation · Download the contract

Security (12)
POST /auth/mfa/verifyComplete a password-authenticated login with TOTP or a verified passkey

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
challengeTokenYesstring
totpCodeNostring · pattern: "^[0-9]{6}$"
passkeyResponseNoobject
Request schema
{
  "type": "object",
  "required": [
    "challengeToken"
  ],
  "properties": {
    "challengeToken": {
      "type": "string"
    },
    "totpCode": {
      "type": "string",
      "pattern": "^[0-9]{6}$"
    },
    "passkeyResponse": {
      "type": "object",
      "additionalProperties": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Browser session created

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/securityList TOTP status and registered passkeys

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Security-factor inventory

Link to this operation · Download the contract

POST /account/security/totpBegin encrypted TOTP enrollment and return the secret once

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Pending TOTP setup

Link to this operation · Download the contract

DELETE /account/security/totpDisable TOTP after verifying a fresh code

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

TOTP disabled

Link to this operation · Download the contract

POST /account/security/totp/verifyVerify and activate a pending TOTP factor

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
codeYesstring · pattern: "^[0-9]{6}$"
Request schema
{
  "type": "object",
  "required": [
    "code"
  ],
  "properties": {
    "code": {
      "type": "string",
      "pattern": "^[0-9]{6}$"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

TOTP enabled

Link to this operation · Download the contract

POST /account/security/reauth/optionsConfirm the current password for one passkey change

Signed-in website session · API keys are not accepted

Browser session and cookie CSRF protections apply. If a factor is enrolled, returns an existing-factor MFA challenge instead of a grant. Confirmation is bound to the user, organization, current session, selected action, target passkey, and credential state; expires five minutes after password confirmation.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
currentPasswordYesstring · maxLength: 128
actionYesstring · one of: "passkey_add", "passkey_remove"
passkeyIdNostring · format: "uuid"Required when action is passkey_remove
Request schema
{
  "type": "object",
  "required": [
    "currentPassword",
    "action"
  ],
  "properties": {
    "currentPassword": {
      "type": "string",
      "maxLength": 128,
      "writeOnly": true
    },
    "action": {
      "type": "string",
      "enum": [
        "passkey_add",
        "passkey_remove"
      ]
    },
    "passkeyId": {
      "type": "string",
      "format": "uuid",
      "description": "Required when action is passkey_remove"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Envelope containing one-time reauthToken and expiresAt when no MFA factor is enrolled

HTTP 202

Envelope containing required true

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Incorrect password or changed account security state

HTTP 403

Browser session or exact-origin CSRF protection required

HTTP 429

Authentication or credential-change rate limit reached

Link to this operation · Download the contract

POST /account/security/reauth/verifyProve an existing factor before changing passkeys

Signed-in website session · API keys are not accepted

Accepts only a reauthentication challenge from the current browser session, never a login challenge. Does not create a login session. Submit either a fresh authenticator code or an existing passkey assertion.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
challengeTokenYesstring
totpCodeNostring · pattern: "^[0-9]{6}$"
passkeyResponseNoobject
Request schema
{
  "type": "object",
  "required": [
    "challengeToken"
  ],
  "properties": {
    "challengeToken": {
      "type": "string"
    },
    "totpCode": {
      "type": "string",
      "pattern": "^[0-9]{6}$"
    },
    "passkeyResponse": {
      "type": "object",
      "additionalProperties": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Envelope containing one-time reauthToken and expiresAt

HTTP 400

Invalid

HTTP 401

Incorrect factor

HTTP 403

Browser session or exact-origin CSRF protection required

HTTP 429

Authentication or credential-change rate limit reached

Link to this operation · Download the contract

POST /account/security/passkeys/optionsConsume fresh confirmation to create a session-bound WebAuthn registration challenge

Signed-in website session · API keys are not accepted

Requires an unused passkey_add reauthToken from the same session. The challenge retains the confirmation deadline and becomes unusable after password reset/change or session revocation.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
reauthTokenYesstring
Request schema
{
  "type": "object",
  "required": [
    "reauthToken"
  ],
  "properties": {
    "reauthToken": {
      "type": "string",
      "writeOnly": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

WebAuthn creation options

HTTP 401

Fresh confirmation required or account security changed

Link to this operation · Download the contract

POST /account/security/passkeysVerify and store a passkey public credential

Signed-in website session · API keys are not accepted

Requires an unused registration challenge created by this session after fresh confirmation. Rechecks credential and session state atomically with registration.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
responseYesobject
displayNameNostring · maxLength: 120
Request schema
{
  "type": "object",
  "required": [
    "response"
  ],
  "properties": {
    "response": {
      "type": "object",
      "additionalProperties": true
    },
    "displayName": {
      "type": "string",
      "maxLength": 120
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Passkey registered

HTTP 400

Invalid or expired registration challenge

HTTP 401

Fresh confirmation required or account security changed

Link to this operation · Download the contract

DELETE /account/security/passkeys/{passkeyId}Remove a user-owned passkey after fresh confirmation

Signed-in website session · API keys are not accepted

Requires an unused passkey_remove reauthToken bound to this exact passkey and session. An existing factor is required when enrolled, including when removing the last passkey.

Parameters

NameLocationRequiredType / constraintsDescription
passkeyIdpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
reauthTokenYesstring
Request schema
{
  "type": "object",
  "required": [
    "reauthToken"
  ],
  "properties": {
    "reauthToken": {
      "type": "string",
      "writeOnly": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 204

Passkey removed

HTTP 401

Fresh confirmation required or account security changed

Link to this operation · Download the contract

GET /account/sessionsList active browser sessions and identify the current session

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Active session inventory

Link to this operation · Download the contract

DELETE /account/sessions/{sessionId}Remotely revoke another active browser session

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
sessionIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Session revoked

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Team (9)
POST /team/invitations/acceptConsume a single-use invitation and create a session in the invited organization

First-party account flow · follow the website instructions

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
tokenYesstring
displayNameYesstring · maxLength: 120
passwordYesstring · minLength: 12; maxLength: 128
Request schema
{
  "type": "object",
  "required": [
    "token",
    "displayName",
    "password"
  ],
  "properties": {
    "token": {
      "type": "string"
    },
    "displayName": {
      "type": "string",
      "maxLength": 120
    },
    "password": {
      "type": "string",
      "minLength": 12,
      "maxLength": 128
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Invitation accepted and browser session created

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/teamGet team policy, invitations, review queue, and usage forecast

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Team workspace state

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /account/team/settingsConfigure allowed email domains and usage-alert thresholds

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
allowedEmailDomainsNoarray · maxItems: 20
usageAlertThresholdsNoarray · minItems: 1; maxItems: 10
Request schema
{
  "type": "object",
  "properties": {
    "allowedEmailDomains": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string"
      }
    },
    "usageAlertThresholds": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "items": {
        "type": "integer",
        "minimum": 1,
        "maximum": 100
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Team policy updated

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/team/invitationsSend a domain-checked single-use member invitation

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"
roleYesstring · one of: "owner", "admin", "member", "viewer"
Request schema
{
  "type": "object",
  "required": [
    "email",
    "role"
  ],
  "properties": {
    "email": {
      "type": "string",
      "format": "email"
    },
    "role": {
      "$ref": "#/components/schemas/MembershipRole"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Invitation stored and email delivered

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /account/team/invitations/{invitationId}Revoke a pending invitation

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
invitationIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Invitation revoked

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/team/reviewsCreate a filing review assignment

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
accessionYesstring
titleYesstring · maxLength: 200
assignedUserIdNostring | null · format: "uuid"
Request schema
{
  "type": "object",
  "required": [
    "accession",
    "title"
  ],
  "properties": {
    "accession": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "maxLength": 200
    },
    "assignedUserId": {
      "type": [
        "string",
        "null"
      ],
      "format": "uuid"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Review task created

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/team/reviews/{reviewId}/versionsAppend an immutable review disposition version

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
reviewIdpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
statusNostring · default: "open"; one of: "open", "in_review", "changes_requested", "closed"
noteNostring · maxLength: 4000
evidenceNoobjectWorkflow evidence; does not change the filing verification state.
Request schema
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "open",
        "in_review",
        "changes_requested",
        "closed"
      ],
      "default": "open"
    },
    "note": {
      "type": "string",
      "maxLength": 4000
    },
    "evidence": {
      "type": "object",
      "description": "Workflow evidence; does not change the filing verification state."
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Review version appended

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/team/reviews/{reviewId}/historyList immutable review versions

Signed-in website session · API keys are not accepted

Parameters

NameLocationRequiredType / constraintsDescription
reviewIdpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Ordered review version history

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/audit/exportExport canonical append-only NDJSON with SHA-256 checksum headers

Signed-in website session · API keys are not accepted

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Immutable audit export

Content type: application/x-ndjson

Response schema
{
  "type": "string"
}

Link to this operation · Download the contract

XBRL (13)
GET /xbrl/footnotes/catalogSelected structured footnote definitions

No API key required; supplied credentials can add restrictions

39 exact US GAAP fields across leases, income taxes and warranties. This versioned catalog is separate from the standard financial concept registry.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/footnotes/catalog'

Responses

HTTP 200

Selected structured footnote definitions

Content type: application/json

FootnoteCatalogResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FootnoteCatalogResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/footnotesSource-linked footnote records for one retained filing

No API key required; supplied credentials can add restrictions

Public bounded read. Filters local concept names before pagination, flags unsupported namespaces, and retains all contexts and vintages. Follow data.pagination.nextCursor with the same accession/category. Pages are not a fixed snapshot. Missing selected facts return an empty records array; no retained package returns 404. No bulk download or new storage is needed.

Parameters

NameLocationRequiredType / constraintsDescription
accessionqueryYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
categoryqueryYesstring · one of: "leases", "income_taxes", "warranties"
cursorqueryNostring · pattern: "^[a-f0-9]{64}$"
limitqueryNointeger · minimum: 1; maximum: 100; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/footnotes' \
  --data-urlencode 'accession=YOUR_ACCESSION' \
  --data-urlencode 'category=YOUR_CATEGORY'

Responses

HTTP 200

Source-linked footnote records for one retained filing

Content type: application/json

FootnotePageResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FootnotePageResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/footnotes/compareCompare two explicitly selected footnote observations

No API key required; supplied credentials can add restrictions

Each fact ID must belong to its supplied accession and category. Arithmetic requires the same metric, issuer, entity scheme, taxonomy namespace, semantic unit, consolidated scope, supported precision, complete provenance and checked verification. Different periods must be chronological and non-overlapping; duration lengths must match exactly. Same-period value disagreements remain unresolved. Difference is right minus left, as exact reported decimal text, subject to source rounding. Tax rates and their differences remain fractions. No winning fact, currency conversion or automatic reconciliation.

Parameters

NameLocationRequiredType / constraintsDescription
categoryqueryYesstring · one of: "leases", "income_taxes", "warranties"
left_accessionqueryYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
right_accessionqueryYesstring · pattern: "^\\d{10}-\\d{2}-\\d{6}$"
left_fact_idqueryYesstring · pattern: "^[a-f0-9]{64}$"
right_fact_idqueryYesstring · pattern: "^[a-f0-9]{64}$"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/footnotes/compare' \
  --data-urlencode 'category=YOUR_CATEGORY' \
  --data-urlencode 'left_accession=YOUR_LEFT_ACCESSION' \
  --data-urlencode 'right_accession=YOUR_RIGHT_ACCESSION' \
  --data-urlencode 'left_fact_id=YOUR_LEFT_FACT_ID' \
  --data-urlencode 'right_fact_id=YOUR_RIGHT_FACT_ID'

Responses

HTTP 200

Compare two explicitly selected footnote observations

Content type: application/json

FootnoteComparisonResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FootnoteComparisonResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/mappingsGet the versioned transparent standard-concept mapping registry

No API key required; supplied credentials can add restrictions

Public registry of 44 standard concepts (filingsift-xbrl-concepts-v4). Eighteen unit-constrained US GAAP mappings require compatible namespace, period and units. Eight v4 additions map retained facts on read; source-concept candidates with invalid metadata remain conflicts, count toward pagination and retain original mapping metadata. EPS, weighted shares and declared dividends per share use reported quarters only. Issuer extensions remain unmapped; this is not a complete normalized taxonomy.

No path or query parameters are specified for this operation.

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/mappings'

Responses

HTTP 200

Mapping registry

Content type: application/json

XbrlMappingRegistryResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/XbrlMappingRegistryResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/factsList raw XBRL facts with source context IDs, parsed contexts, and units

No API key required; supplied credentials can add restrictions

Public fact-ID pagination in meta.pagination. Reuse nextCursor as cursor; it is not a filter-bound snapshot cursor. Contexts retain parsed entity, period, dimensions, and a scenario-present flag, not arbitrary scenario XML. Shared query-cost and response-size limits also apply, so the route maximum of 500 may exceed the configured request budget.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryNostring · pattern: "^[0-9]{1,10}$"
accessionqueryNostring
conceptqueryNostring
standard_conceptqueryNostring
period_endqueryNostring · format: "date"
dimension_kindqueryNostring · one of: "segment", "geography", "product", "legal_entity", "other"
cursorqueryNostring · pattern: "^[0-9a-f]{64}$"
limitqueryNointeger · minimum: 1; maximum: 500; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/facts'

Responses

HTTP 200

Raw XBRL facts

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/statementsGet as-reported financial statement networks and their raw facts

No API key required; supplied credentials can add restrictions

Public bounded view of one package; reads at most 5000 facts and 500 conflicts without continuation. Use paged raw facts for larger packages.

Parameters

NameLocationRequiredType / constraintsDescription
accessionqueryYesstring
statementqueryNostring · one of: "income_statement", "balance_sheet", "cash_flow_statement"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/statements' \
  --data-urlencode 'accession=YOUR_ACCESSION'

Responses

HTTP 200

As-reported statements

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/disclosuresGet disclosure-topic and roll-forward-candidate networks

No API key required; supplied credentials can add restrictions

Public view reading at most 5000 facts without continuation. Network roles and roll-forward flags do not establish complete footnote extraction.

Parameters

NameLocationRequiredType / constraintsDescription
accessionqueryYesstring
topicqueryNostring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/disclosures' \
  --data-urlencode 'accession=YOUR_ACCESSION'

Responses

HTTP 200

As-reported disclosure networks

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/quartersGet reported quarters and compatible source-linked YTD disaggregation

No API key required; supplied credentials can add restrictions

Reads at most 5000 facts. Reported-quarter candidates use 70–110-day durations; YTD subtraction uses compatible observations up to 300 days. Annual-minus-nine-month Q4 derivation is outside this endpoint.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryYesstring
standard_conceptqueryYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/quarters' \
  --data-urlencode 'cik=YOUR_CIK' \
  --data-urlencode 'standard_concept=YOUR_STANDARD_CONCEPT'

Responses

HTTP 200

Reported and derived quarters

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/revisionsGet cross-filing fact revision history

No API key required; supplied credentials can add restrictions

Public view of differing comparable observations from at most 5000 facts. It does not identify formal restatements or retain every parser revision.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryYesstring
standard_conceptqueryNostring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/revisions' \
  --data-urlencode 'cik=YOUR_CIK'

Responses

HTTP 200

Revision history

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/timeseriesGet chart-ready source-linked standard-concept history

No API key required; supplied credentials can add restrictions

Public bounded view reading at most 5000 facts without continuation; not a complete historical archive.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryYesstring
standard_conceptqueryYesstring

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/timeseries' \
  --data-urlencode 'cik=YOUR_CIK' \
  --data-urlencode 'standard_concept=YOUR_STANDARD_CONCEPT'

Responses

HTTP 200

Time-series data

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/peersGet a bounded cross-company period table

No API key required; supplied credentials can add restrictions

Accepts 2–25 distinct comma-separated CIKs and reads at most 500 matching facts per issuer. Missing values and conflicts remain explicit.

Parameters

NameLocationRequiredType / constraintsDescription
ciksqueryYesstring
standard_conceptqueryYesstring
period_endqueryYesstring · format: "date"

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/peers' \
  --data-urlencode 'ciks=YOUR_CIKS' \
  --data-urlencode 'standard_concept=YOUR_STANDARD_CONCEPT' \
  --data-urlencode 'period_end=YOUR_PERIOD_END'

Responses

HTTP 200

Peer table

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/conflictsList unresolved values sharing concept, period, dimensions, and unit

No API key required; supplied credentials can add restrictions

Public bounded result of at most 500 conflicts with no continuation cursor; the server does not select a winning value.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryNostring
accessionqueryNostring
limitqueryNointeger · minimum: 1; maximum: 500; default: 100

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/conflicts'

Responses

HTTP 200

Explicit XBRL conflicts

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /xbrl/comparabilityReview bounded financial fact alternatives without selecting a winner

No API key required; supplied credentials can add restrictions

Deployed with representative public-data and automated competing-context, unit, period, source-availability and pair-bound acceptance. Requires CIK and a registry standard concept; optional period_end narrows the candidate set. Reads limit plus one facts to detect truncation, then compares at most limit facts. No continuation cursor; narrow the request or use paged raw facts. A nontruncated read does not establish complete SEC coverage. Context, unit, scope, mapping and numeric alternatives remain explicit. No winning value, analyst override, formal restatement or verification upgrade is produced. All bounded pairs are evaluated; at most 200 prioritized pair details are returned with separate comparisonsTruncated and inputTruncated flags. Summary counts include all evaluated pairs. Shared response-size limits apply. A missing XBRL fact source returns HTTP 503, not an empty successful review.

Parameters

NameLocationRequiredType / constraintsDescription
cikqueryYesstring · pattern: "^[0-9]{1,10}$"
standard_conceptqueryYesstringA standardConcept from /xbrl/mappings
period_endqueryNostring · format: "date"
limitqueryNointeger · minimum: 1; maximum: 100; default: 40

Replace YOUR_… with identifiers from your available records. This is a request template, not a prefilled production transaction.

curl --fail-with-body --show-error --get 'https://api.filingsift.com/api/v1/xbrl/comparability' \
  --data-urlencode 'cik=YOUR_CIK' \
  --data-urlencode 'standard_concept=YOUR_STANDARD_CONCEPT'

Responses

HTTP 200

Bounded no-winner comparability review with explicit input truncation

Content type: application/json

FinancialComparabilityResponse

FieldRequiredType / constraintsDescription
dataYesobjectAll-pairs review of a bounded candidate set. Reported numeric text is normalized without currency or scale conversion. Different rounding declarations may explain a disagreement but never resolve it. same_observed_value records exact numeric agreement while financial comparability remains a separate analyst determination. selectedFactId and value remain null in this read-only review, including when observed values are the same.
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/FinancialComparabilityResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

XBRL fact source unavailable; error code xbrl_review_unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

Restricted and retired contracts (35)
POST /billing/webhooks/providerReceive a signed event from the configured billing provider

Signed billing-provider callback · not a customer webhook API

Verifies the configured provider signature over the raw request body and synchronizes subscription state. Stripe uses Stripe-Signature; the deterministic non-Stripe provider uses X-Billing-Signature. The configured provider's signature is required; bearer API keys do not authenticate this endpoint.

Parameters

NameLocationRequiredType / constraintsDescription
Stripe-SignatureheaderNostringRequired when Stripe is the configured provider
X-Billing-SignatureheaderNostringRequired for the deterministic non-Stripe provider

Request body (required)

Content type: application/json

Request schema
{
  "type": "object",
  "additionalProperties": true
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 202

Verified event accepted idempotently

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /account/membersDeprecated direct-member endpoint; use the team invitation workflow

Deprecated / unavailable for new integrations

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

MemberCreateRequest

FieldRequiredType / constraintsDescription
emailYesstring · format: "email"
displayNameYesstring · minLength: 1; maxLength: 120
roleYesstring · one of: "owner", "admin", "member", "viewer"
Request schema
{
  "$ref": "#/components/schemas/MemberCreateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 410

Direct member creation is disabled; use /account/team/invitations

Link to this operation · Download the contract

GET /admin/organizationsList customer organizations for internal administration

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Organization overviews

Content type: application/json

OrganizationListResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/OrganizationListResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/organizationsCreate an organization, owner, membership, and initial one-time key

Platform administrator only

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

OrganizationCreateRequest

FieldRequiredType / constraintsDescription
nameYesstring · minLength: 1; maxLength: 160
slugYesstring · pattern: "^[a-z][a-z0-9-]{1,62}[a-z0-9]$"
ownerEmailYesstring · format: "email"
ownerNameYesstring · minLength: 1; maxLength: 120
planKeyNostring · one of: "evaluation", "builder", "professional", "team", "internal"
Request schema
{
  "$ref": "#/components/schemas/OrganizationCreateRequest"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Organization and one-time owner key created

Content type: application/json

OrganizationIssueResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/OrganizationIssueResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/accountsList account users for internal platform administration

Platform administrator only

Requires an authenticated platform administrator; ordinary organization administrators are refused.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Account-user administration view

Content type: application/json

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "meta": {
      "$ref": "#/components/schemas/ApiMeta"
    }
  }
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /admin/organizations/{organization_id}Change an organization's active status or plan limits

Platform administrator only

Parameters

NameLocationRequiredType / constraintsDescription
organization_idpathYesstring · format: "uuid"
organization_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
statusNostring · one of: "active", "suspended"
planKeyNostring · one of: "evaluation", "builder", "professional", "team", "internal"
Request schema
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "active",
        "suspended"
      ]
    },
    "planKey": {
      "$ref": "#/components/schemas/PlanKey"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Updated organization

Content type: application/json

OrganizationResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/OrganizationResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

DELETE /admin/organizations/{organization_id}Delete a closed workspace from the active directory

Platform administrator only

Internal only. Requires platform-admin authority and admin:write. Exact slug confirmation, a suspended workspace, no active members, keys, sessions or invitations, and no billing records are required. Current, internal and master-member workspaces are protected. User login records and audit history are retained. Cookie-authenticated mutations require the configured Origin and X-FilingSift-CSRF header.

Parameters

NameLocationRequiredType / constraintsDescription
organization_idpathYesstring · format: "uuid"
organization_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

OrganizationSlugConfirmation

FieldRequiredType / constraintsDescription
slugYesstring · minLength: 3; maxLength: 64Exact slug returned by the closure preview; no case folding or trimming.
Request schema
{
  "$ref": "#/components/schemas/OrganizationSlugConfirmation"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Envelope with data.id and data.deleted true; audit and user records retained

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/organizations/{organization_id}/closurePreview workspace closure eligibility and access counts

Platform administrator only

Internal only. Requires platform-admin authority and admin:write. This read does not close or delete anything. Returns organization, counts (activeMembers, activeKeys, activeSessions, pendingInvitations, billingRecords), protected, canClose and canDelete in data. Eligibility is checked again under lock when a mutation is requested.

Parameters

NameLocationRequiredType / constraintsDescription
organization_idpathYesstring · format: "uuid"
organization_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Closure preview

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/organizations/{organization_id}/closeSuspend a workspace and revoke its active access

Platform administrator only

Internal only. Requires platform-admin authority, admin:write and the exact organization slug. Current, internal, master-member and billing-linked workspaces are refused. Suspends the workspace, removes active memberships, revokes keys, sessions and pending invitations, and records an audit event transactionally. Deletion is a separate operation. Cookie-authenticated mutations require the configured Origin and X-FilingSift-CSRF header.

Parameters

NameLocationRequiredType / constraintsDescription
organization_idpathYesstring · format: "uuid"
organization_idpathYesstringUse the identifier returned by the corresponding list or creation operation.

Request body (required)

Content type: application/json

OrganizationSlugConfirmation

FieldRequiredType / constraintsDescription
slugYesstring · minLength: 3; maxLength: 64Exact slug returned by the closure preview; no case folding or trimming.
Request schema
{
  "$ref": "#/components/schemas/OrganizationSlugConfirmation"
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Envelope with data.id

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 429

API-wide fixed-window request limit exceeded

Response headers: Retry-After, RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset.

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/auditList the latest cross-organization administrative audit entries

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Global audit entries

Content type: application/json

AuditResponse

FieldRequiredType / constraintsDescription
dataYesarray
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/AuditResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verificationGet frozen benchmark queue, reviewer, regression, and promotion-gate status

Platform administrator only

Requires platform-admin authority or an active qualified-reviewer profile. The response never converts machine review into qualified verification.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Truthful review and promotion-gate status

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/coverageMeasure exact frozen-benchmark coverage, queue state, failures, and ingestion latency by issuer

Platform administrator only

Requires platform-admin authority or an active qualified-reviewer profile. Measures only the committed 100 accessions and omits raw failure reasons.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Exact case and per-issuer benchmark coverage telemetry

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 503

Turnstile, commercial billing, or another required service is temporarily or intentionally unavailable

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/evidence-auditAudit all frozen filings for exact source provenance and complete machine evidence

Platform administrator only

Requires platform-admin authority or an active qualified-reviewer profile. Returns bounded issue codes and counts, never raw filing documents.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Exact 100-filing evidence readiness audit

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/verification/bootstrapIdempotently create review items from the committed frozen manifest

Platform administrator only

Platform administrator only. Creates workflow records, not qualified ground truth.

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Frozen queue bootstrap result

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 401

Missing, malformed, expired, revoked, or invalid account session/API key, or incorrect login credentials

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/reviewersList authorized qualified reviewers without private evidence references

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Reviewer roster

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/verification/reviewersRecord reviewer qualification and its internal evidence reference

Platform administrator only

Platform administrator only. Application access alone never establishes qualification.

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
userIdYesstring · format: "uuid"
qualificationYesstring · maxLength: 1000
qualificationEvidenceYesstring · maxLength: 1000
activeNoboolean · default: true
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "userId",
    "qualification",
    "qualificationEvidence"
  ],
  "properties": {
    "userId": {
      "type": "string",
      "format": "uuid"
    },
    "qualification": {
      "type": "string",
      "maxLength": 1000
    },
    "qualificationEvidence": {
      "type": "string",
      "maxLength": 1000
    },
    "active": {
      "type": "boolean",
      "default": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Reviewer authority recorded

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/queueList frozen benchmark review items and explicit workflow/approval states

Platform administrator only

Parameters

NameLocationRequiredType / constraintsDescription
review_statequeryNostring · one of: "pending", "assigned", "awaiting_second_review", "needs_correction", "qualified_reviewed"
approval_statequeryNostring · one of: "candidate", "machine_checked", "verified"
reviewer_idqueryNostring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Bounded 100-item review queue

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/queue.csvDownload the reviewer assignment queue as CSV

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Frozen review queue with SEC source links and explicit states

Content type: text/csv

Response schema
{
  "type": "string"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/verification/items/{item_id}/assignAtomically assign distinct primary and second-pass reviewers

Platform administrator only

Parameters

NameLocationRequiredType / constraintsDescription
item_idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
primaryReviewerIdYesstring · format: "uuid"
secondReviewerIdYesstring · format: "uuid"
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "primaryReviewerId",
    "secondReviewerId"
  ],
  "properties": {
    "primaryReviewerId": {
      "type": "string",
      "format": "uuid"
    },
    "secondReviewerId": {
      "type": "string",
      "format": "uuid"
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Assigned review item

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/verification/items/{item_id}/dispositionsAppend an immutable assigned-reviewer disposition

Platform administrator only

Requires the assigned active reviewer, an SEC-source-opened attestation, exhaustive structured annotation including amendment links, and exact annotation agreement between the distinct primary and second-pass reviewers. Extraction failures atomically create regression cases.

Parameters

NameLocationRequiredType / constraintsDescription
item_idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
decisionYesstring · one of: "accepted", "needs_correction", "extraction_failure"
reasonCodeYesstring
notesNostring · maxLength: 5000
sourceOpenedYesboolean · const: true
annotationYesobject
Request schema
{
  "type": "object",
  "required": [
    "decision",
    "reasonCode",
    "sourceOpened",
    "annotation"
  ],
  "properties": {
    "decision": {
      "type": "string",
      "enum": [
        "accepted",
        "needs_correction",
        "extraction_failure"
      ]
    },
    "reasonCode": {
      "type": "string"
    },
    "notes": {
      "type": "string",
      "maxLength": 5000
    },
    "sourceOpened": {
      "type": "boolean",
      "const": true
    },
    "annotation": {
      "type": "object",
      "required": [
        "parserVersion",
        "expectedFacts",
        "expectedSignals",
        "expectedRefusals",
        "expectedAmendmentLinks"
      ],
      "properties": {
        "parserVersion": {
          "type": "string",
          "maxLength": 120
        },
        "expectedFacts": {
          "type": "array",
          "maxItems": 5000,
          "items": {
            "type": "object"
          }
        },
        "expectedSignals": {
          "type": "array",
          "maxItems": 5000,
          "items": {
            "type": "object"
          }
        },
        "expectedRefusals": {
          "type": "array",
          "maxItems": 5000,
          "items": {
            "type": "object"
          }
        },
        "expectedAmendmentLinks": {
          "type": "array",
          "maxItems": 1000,
          "description": "Exhaustive qualified-human labels for amends",
          "refinances": null,
          "and references_agreement links originating from this case accession": null,
          "items": {
            "type": "object",
            "required": [
              "sourceAccession",
              "targetAccession",
              "relation",
              "evidence",
              "evidenceSha256",
              "sourceLocator"
            ]
          }
        }
      }
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Immutable review version recorded

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/items/{item_id}/versionsRead append-only disposition history for one benchmark case

Platform administrator only

Parameters

NameLocationRequiredType / constraintsDescription
item_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Review item and version history

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/items/{item_id}/packetDownload source-bound machine candidates and an empty reviewer annotation

Platform administrator only

Machine candidates are navigation aids, not ground truth. The source-opened attestation is always false in the generated packet.

Parameters

NameLocationRequiredType / constraintsDescription
item_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Review evidence packet

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/verification/items/{item_id}/promotePromote a qualified-reviewed item only after the official benchmark gate opens

Platform administrator only

Fails closed unless two independent reviews are complete and the committed official score report passes every policy threshold.

Parameters

NameLocationRequiredType / constraintsDescription
item_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Item promoted to verified

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/verification/regressionsList regression cases created from discovered extraction failures

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Regression case list

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

PATCH /admin/verification/regressions/{regression_id}Record a regression fix or verification with a mandatory test reference

Platform administrator only

Parameters

NameLocationRequiredType / constraintsDescription
regression_idpathYesstring · format: "uuid"

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
statusYesstring · one of: "open", "fixed", "verified"
testReferenceNostring · maxLength: 500
Request schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "open",
        "fixed",
        "verified"
      ]
    },
    "testReference": {
      "type": "string",
      "maxLength": 500
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Updated regression case

Content type: application/json

GenericResponse

FieldRequiredType / constraintsDescription
dataYesobject
metaYesobject
Response schema
{
  "$ref": "#/components/schemas/GenericResponse"
}

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/webhooksRead retained endpoint metadata for the withdrawn webhook feature

Withdrawn feature · retained metadata / cleanup only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Product webhook configuration

Link to this operation · Download the contract

POST /account/webhooksRetired customer webhook creation

Withdrawn feature · retained metadata / cleanup only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 410

Customer webhooks withdrawn; feature_withdrawn

Link to this operation · Download the contract

DELETE /account/webhooks/{endpoint_id}Disable an endpoint and stop future delivery attempts

Withdrawn feature · retained metadata / cleanup only

Requires webhooks:write. Remains available while release or billing gates are closed. A request already in flight may finish.

Parameters

NameLocationRequiredType / constraintsDescription
endpoint_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Disabled endpoint; delivery history retained

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /account/webhook-deliveriesRead delivery, retry, and dead-letter state

Withdrawn feature · retained metadata / cleanup only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Product webhook delivery metadata without retained filing payloads

Link to this operation · Download the contract

POST /account/webhook-deliveries/{delivery_id}/replayRetired customer webhook replay

Withdrawn feature · retained metadata / cleanup only

Parameters

NameLocationRequiredType / constraintsDescription
delivery_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 410

Customer webhooks withdrawn; feature_withdrawn

Link to this operation · Download the contract

GET /admin/pilotsReturn the private cross-organization pilot portfolio and three-pilot threshold

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Private pilot portfolio

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/pilotsEnroll an organization after measurement consent is recorded

Platform administrator only

No path or query parameters are specified for this operation.

Request body (required)

Content type: application/json

FieldRequiredType / constraintsDescription
organizationIdYesstring · format: "uuid"
labelYesstring · minLength: 1; maxLength: 100
workflowYesstring · one of: "financing_change_review", "filing_comparison", "evidence_export", "api_integration"
analystRoleYesstring · one of: "credit_analyst", "research_analyst", "financial_analyst", "developer", "other"
consentRecordedYesboolean · const: true
Request schema
{
  "type": "object",
  "required": [
    "organizationId",
    "label",
    "workflow",
    "analystRole",
    "consentRecorded"
  ],
  "properties": {
    "organizationId": {
      "type": "string",
      "format": "uuid"
    },
    "label": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "workflow": {
      "type": "string",
      "enum": [
        "financing_change_review",
        "filing_comparison",
        "evidence_export",
        "api_integration"
      ]
    },
    "analystRole": {
      "type": "string",
      "enum": [
        "credit_analyst",
        "research_analyst",
        "financial_analyst",
        "developer",
        "other"
      ]
    },
    "consentRecorded": {
      "type": "boolean",
      "const": true
    }
  }
}

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Private active pilot enrolled

HTTP 400

Invalid filter, cursor, request, or query cost

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

HTTP 404

Resource not found

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/pilots/{pilot_id}/reviewsAppend a completed or withdrawn final review

Platform administrator only

Completion fails until paired time, nonzero evidence and fact denominators, and returned or seven-day no-return behavior are observable.

Parameters

NameLocationRequiredType / constraintsDescription
pilot_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Append-only final review recorded

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

GET /admin/enterprise-controlsList the latest private enterprise-demand state for platform review

Platform administrator only

No path or query parameters are specified for this operation.

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 200

Platform-admin enterprise demand queue

HTTP 403

Valid key lacks a required scope, role, entitlement, provider retrieval window, or platform-admin status

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

POST /admin/enterprise-controls/{request_id}/reviewsAppend a platform review with per-control states and opaque evidence receipts

Platform administrator only

Accepted identity controls require an enabled customer configuration; accepted penetration testing requires report and remediation receipts; accepted requests require every requested control to be accepted or explicitly not applicable.

Parameters

NameLocationRequiredType / constraintsDescription
request_idpathYesstring · format: "uuid"

Use the signed-in workspace or authorized provider/admin workflow described above. This operation is not a general API-key quickstart.

Responses

HTTP 201

Append-only review recorded

HTTP 409

Requested account transition violates a current-state constraint

Content type: application/json

ErrorResponse

FieldRequiredType / constraintsDescription
errorYesobject
requestIdNostring
metaNoobject
Response schema
{
  "$ref": "#/components/schemas/ErrorResponse"
}

Link to this operation · Download the contract

← Browse all documentation