For developers

Everything the web app does is available over a plain REST API with bearer keys. Trace Files is designed to sit behind an ERP, a warehouse scanner or a shop floor system.

Endpoints

Base URL https://trace.fulcrum360.com. Send Authorization: Bearer t4l_live_…. The full reference lives in docs/API.md in the repository.

MethodPathScopeWhat it does
GET/api/v1/parts/lookup?pn=&sn=&q=publicSearch trace files by part number, serial or free text
POST/api/v1/partsparts:writeCreate a trace file (birth, inventory or written-off origin); multipart with documents
GET/api/v1/trace/{code}publicFull trace file: identity, holder, events with documents, verification summary
POST/api/v1/trace/{code}/eventsevents:writeAppend an event; multipart with documents
POST/api/v1/trace/{code}/receiveevents:writeScan-to-receive: countersign the transfer addressed to you and record a receipt
POST/api/v1/events/{id}/countersignevents:writeCountersign a transfer addressed to your organization
GET/api/v1/trace/{code}/archivepublicZIP of every document plus a manifest with hashes
GET/api/v1/trace/{code}/qr.pngpublicQR image for the tag (?size=240); qr.svg for print
GET/api/v1/documents/{id}publicDownload one document by id
GET/api/v1/verify/{code}publicRe-verification report: genesis, fingerprints, chain, signatures, anchor
GET/api/v1/anchorspublicDaily anchors, newest first; /anchors/{date} for one batch with its proofs
POST/api/v1/anchors/runanchors:runPublish today's anchor batch (or an owner/admin session); idempotent per date
GET/api/v1/orgs/{code}publicAn organization's public profile and Ed25519 public key
POST/api/v1/intake/batchesintake:writeBulk intake: upload a folder of documents for matching
GET/api/v1/intake/batches/{id}any keyAn intake batch with its items; your own organization's batches only
GET/api/v1/meany keyThe organization and scopes behind the key

Scan to receive, from a warehouse scanner

The QR on the part encodes the trace URL. Strip the code, call receive, and the part is yours: the seller's transfer is countersigned with your key and a receipt event is appended.

curl -X POST https://trace.fulcrum360.com/api/v1/trace/W750-T1AD-XSQZ/receive \
  -H "Authorization: Bearer $T4L_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reference": "GRN-0091", "condition": "NE"}'

Scopes

  • parts:readRead trace files and documents
  • parts:writeCreate trace files
  • events:writeAppend, receive and countersign events
  • docs:writeAttach documents
  • intake:writeUpload intake batches
  • verify:readVerification reports
  • anchors:runPublish the daily anchor batch

Verify without us

Event hashes are SHA-256 over canonical JSON (keys sorted, no whitespace) of the fields listed in the verification report. Signatures are Ed25519 over the hex hash. Anyone holding the documents and the public keys can recompute every step offline.

Environments

Keys are issued as live or test. Test keys write to the same locker but are meant for integration work; revoke them from the API page when you are done.