HTTP API
For non-TypeScript backends (Python, Ruby, Go, etc.), you can call the Verify API directly over HTTP. The SDK’s TypeScript functions are thin wrappers around these two endpoints:
Create a session:
POST https://api.verify.spruceid.com/sessionsAuthorization: Bearer {apiKey}Returns JSON:
{ "id": "session_abc123", "client_secret": "secret_xyz789", "iframe_url": "https://iframe.verify.spruceid.com/session_abc123"}Fetch results:
GET https://api.verify.spruceid.com/sessions/{id}Authorization: Bearer {apiKey}Returns JSON:
{ "status": "success", "response": { "org.iso.18013.5.1": { "family_name": "Doe", "given_name": "Jane", "birth_date": "1990-03-15" } }, "errors": {}, "warnings": {}}Both endpoints require the Authorization: Bearer {apiKey} header. The SDK uses a 5-second request timeout — we recommend a similar timeout in your HTTP client. The base URL defaults to https://api.verify.spruceid.com; use verifierUrl to override for staging or development.