Documentation
Documentation

Overview

Spore docs

Start here

Getting startedInstall the CLIAuthentication and keys

Build

Search and filtersSegments and the loopEnrichment lifecycle

Recipes

Recipe: search to a live SegmentRecipe: enrich without a segmentRecipe: land your own research

Connect

Events

Account

Credits and billing

Reference

Conventions
API reference
Export the organization's Operation calls POSTPage the organization's Operation calls GETExport the organization's recorded acts POSTPage the organization's recorded acts GETCancel an enrichment launch POSTRead a vocabulary: tools, filters, knowledge, or NACE GETPublish a staged Commons Generation POSTRestore the retained previous Commons Generation POSTPage the organization's Companies GETCorrect a Company's Core under Spore-If-Match PATCHDelete a Company DELETERead everything you know about one Company GETRead Legal entity data for Companies you hold POSTFind Legal entities in the Commons POSTFold one Company into another POSTMint Companies from your own data, or attach rows to Companies you hold POSTPromote a declared current Fact into Company Core POSTRead one Company GETMeasure requested fields over a set of Companies POSTRun a native enrichment POSTPoll an enrichment GETFollow the organization's durable events stream GETPage a Job's frozen target list GETCreate an API key and reveal its secret once POSTRevoke an organization API key POSTList per-item enrichment outcomes GETDeclare a namespace and its fields before recording into them POSTDelete a declaration while nothing stands on it DELETERead your Catalog GETRecord what you observed about a Company or concluded about a Segment POSTUnlock every Legal entity a search matched POSTSearch the Commons: count, analytics, and a minted sample POSTPage a Segment's members, with the exact count GETName a live filter over your Companies POSTDelete a Segment DELETERead what you have concluded about one Segment GETRename a Segment, or change what it means, under Spore-If-Match PATCHRead a Segment's name and filter GETPage the organization's Segments GETPage the organization's credit ledger GETRead the balance and this key's spend bounds GET
API reference

List per-item enrichment outcomes

Lists child enrichments in stable target order with lifecycle and outcome as separate fields. Outputs are opt-in via `include=output`, and `ref` echoes the caller's per-target correlation key. Free.

GET
/api/v1/enrichments/{enrichmentId}/items

Lists child enrichments in stable target order with lifecycle and outcome as separate fields. Outputs are opt-in via include=output, and ref echoes the caller's per-target correlation key.

Free.

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Path Parameters

enrichmentId*string

The launch whose items to list

Formatuuid

Query Parameters

lifecycle?string

Return only items in this lifecycle state.

Value in

  • "waiting"
  • "queued"
  • "running"
  • "completed"
  • "completed_with_errors"
  • "failed"
  • "cancelled"
outcome?string

Return only items with this outcome.

Value in

  • "found"
  • "nothing_found"
  • "couldnt_look"
  • "failed"
  • "cancelled"
include?"output"

Include the projected output for each item.

Value in

  • "output"
cursor?string

Opaque cursor from a previous page.

limit?integer

Maximum items to return.

Range1 <= value <= 200
Default100

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/enrichments/497f6eca-6276-4993-bfeb-53cbbbba6f08/items"
{  "items": [    {      "enrichmentId": "5e78c3b0-175d-47fb-877d-0a88ecd2febb",      "companyId": "string",      "targetIndex": 0,      "lifecycle": "waiting",      "outcome": "found",      "output": null,      "message": "string",      "creditsCharged": 0,      "error": {        "code": "string",        "message": "string"      },      "createdAt": "2019-08-24T14:15:22Z",      "completedAt": "2019-08-24T14:15:22Z"    }  ],  "nextCursor": "string"}

Revoke an organization API key POST

Requires key:manage and a creator who is still an organization owner or admin. The target must belong to the authenticated organization; missing and foreign keys both return 404. Revoking a recorded parent or transitive ancestor returns 403 key_ancestor_revocation_forbidden, including through revoked ancestors. Revoking an already revoked non-ancestor key succeeds without another policy event. Subsequent authentication with the revoked key is refused. Free.

Declare a namespace and its fields before recording into them POST

Declares what your organization wants to know about Companies: a namespace with typed fields, each carrying its unit, dimension, freshness, and meaning. Recording into a field that is not declared is refused, so this call comes first. The same call amends: a field you already declared is left alone, a new one is added, and a description or freshness you changed your mind about is updated — which makes it safe to send your whole catalog on every boot. What it never does is remove a field by omission, or change what a field *is* once a Fact references it: name, type, unit, dimension, and promotion are then fixed and the fix for a mistake is a new field. Caps are 1000 namespaces and 50 fields each. Free.