Skip to content
InferencePassInferencePass

Make your first request

Send a first inference request in under five minutes. InferencePass uses project-scoped API keys, a server-defined model catalogue, and the same usage and billing path for requests from the dashboard, cURL, and SDKs.

1 Create a key2 Set the environment3 Send the request4 Read the response

Before you begin

Create a project in the dashboard, confirm it is active, and create an API key whose environment matches the project. Start with a test project if you are validating an integration. Keep the secret in a local environment variable; it is shown only once.

export INFERENCEPASS_API_BASE="https://api.inferencepass.dev"
export INFERENCEPASS_API_KEY="<paste-your-short-lived-api-key>"

Send your first request

curl "$INFERENCEPASS_API_BASE/v1/chat/completions" \
  -H "Authorization: Bearer $INFERENCEPASS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-5.6-sol","messages":[{"role":"user","content":"Explain what InferencePass is in one sentence."}],"stream":false,"max_completion_tokens":128,"temperature":0.7}'
Keys are read from environment variables; this example never contains a real credential.

The model ID in the example is a documented shape, not an availability guarantee. Replace it with a model returned by GET /v1/models and allowed by your project. A project allowlist is authoritative.

Read the response

Response
{
  "id": "req_…",
  "object": "chat.completion",
  "model": "gpt-5.6-sol",
  "choices": [{ "message": { "role": "assistant", "content": "InferencePass is an independent gateway for evidence-gated model routes." }, "finish_reason": "stop" }],
  "usage": { "input_tokens": 21, "output_tokens": 18, "total_tokens": 39 }
}
Fields may include the InferencePass request_id and normalized usage extensions.

The response contains a request ID, finish reason, and normalized usage. When usage is authoritative and the request settles successfully, inferencepass.charge.amount_minor is the final charge in the response currency. The request is billed once even if the client retries a request with the same Idempotency-Key.

Troubleshooting

  • invalid_api_key: check that the environment variable is set in the same shell and that the key has not been revoked or expired.
  • model_unavailable: list models again; catalogue availability can change as routes are verified or degraded.
  • insufficient_balance: add purchased credit to the workspace or lower the requested maximum output.
  • rate_limit_exceeded: wait for the Retry-After hint; do not retry a streamed request after visible output.

Continue with authentication, or inspect the API Reference.