Skip to Content
API referenceOverview & Authentication

API reference

Use the runtime API for SDK telemetry and governed actions. Use customer operations for authorized queries, configuration, and evidence exports. These paths use different credentials. An application key does not grant a person’s portal permissions.

Choose the API

PurposeStarting pointAuthentication
Record application activity or request a policy decisionConfigured VeriProof runtime endpointApplication SDK key
Query or manage customer recordsCustomer Portal API for the deploymentSupported authenticated user or workload flow
Automate supported customer operationsCLI or MCPUser sign-in or registered workload identity

Hosted runtime defaults to https://ingest.veriproof.app. For Customer-managed Azure, use the ingest base URL supplied for that environment. The portal address and ingest endpoint are not interchangeable.

Runtime authentication

Pass the complete issued application key to the SDK. It sets the protected-request headers required by the endpoint.

vp_cust_<customer-slug>.<functions-key>.<application-key>

The application-key segment belongs in X-API-Key; the Functions segment belongs in x-functions-key where required. The customer slug is not an authorization claim. Services resolve scope from validated credentials.

Direct HTTP clients must follow the endpoint’s authentication contract. Do not assume a local development configuration describes the Azure deployment.

Keep credentials out of browser code, source control, command history, logs, and examples. Package access and application runtime calls do not use the same credentials.

Customer operations

The portal uses its supported sign-in flow and authenticated session. For automation, prefer the documented CLI or MCP flow for the operation. Do not script a presumed email-and-password token endpoint or assume a fixed token lifetime.

Confirm tenant, role, application, and audit-engagement scope before sending a request. A valid identity can still be denied access to a specific record.

Read the response

StatusFirst check
200Inspect the operation result; HTTP success is not necessarily a policy allowance or completed business action.
400 or 422Read the returned validation code and field details. Their meaning depends on the endpoint.
401Check the credential, expiry or revocation state, and intended endpoint.
403Check the caller’s scope and permission for the operation.
413Compare the request size with the endpoint’s configured limit.
429Follow the retry instructions and the SDK’s bounded retry contract.
503Read the returned error code and service state. Do not infer one cause from the status alone. platform_write_freeze means VeriProof has paused writes on every tenant: nothing was saved, reads still work, and you can resend the same request after Retry-After.

Never treat an unavailable policy service as permission to execute a protected action. For an uncertain business outcome, reconcile the original request before attempting another action.

Payloads and retries

Use the endpoint contract for body size, supported media, attachment handling, and batch limits. A batch limit applies to the entire request, not each item independently.

Where staged uploads are supported, use the returned attachment reference in telemetry instead of embedding a large binary. Keep uploaded content within the application’s approved data-handling scope.

Honor Retry-After when the operation permits a retry. Preserve the original semantic request and idempotency key. Authentication failures, policy denials, and changed-input conflicts are not ordinary transport retries.

Sandbox and test data

The shared portal demo uses example records. It is not an SDK ingest destination or a substitute for testing your own integration. Use a development application for write tests, with its assigned key and endpoint. See Explore the demo.

Versions and endpoint coverage

Versioned routes identify a contract family. Use the selected release record for compatibility and supported fields; do not infer a support period from the URL.

The HTTP endpoint catalog is generated from declared routes. It is an inventory, not proof of permissions or completed runtime qualification. Check the request and response contract and the relevant workflow guide before implementation.

Last updated on