B2BB2B LLM

Deferred inference jobs

Queue supported application requests and retrieve results by public identifier.

Server integrations can add async: true to Chat Completions, Messages or Responses requests. The service stores a durable job and returns an acceptance identifier before model execution completes. This API mode is separate from the browser-only Playground and Model Verification workflows.

Request

curl https://api.b2b-llm.com/v1/responses \
  -H "Authorization: Bearer $B2B_API_KEY" -H 'Content-Type: application/json' \
  -d '{"model":"gpt-5.4","input":"Prepare a concise inventory summary.","async":true,"stream":false}'

Response: accepted

{"request_id":"REQUEST_PUBLIC_ID","status":"queued","result_url":"https://p-api.b2b-llm.com/api/v1/requests/REQUEST_PUBLIC_ID"}

The service strips the extension before forwarding upstream. async and streaming cannot both be true. Temporary browser credentials cannot submit durable jobs; use a dedicated application key.

Retrieve the outcome

The company owner's Partner credential reads the retained result:

curl https://p-api.b2b-llm.com/api/v1/requests/REQUEST_PUBLIC_ID \
  -H "Authorization: Bearer $B2B_PARTNER_KEY"
{"data":{"request_id":"REQUEST_PUBLIC_ID","status":"completed","response_status":200,"response":{"object":"response","status":"completed"}}}

An unknown, foreign or expired identifier is not accessible. Result retention is 24 hours; record what your application needs before expiry. A configured signed callback can deliver completion independently of the caller's polling connection.

Admission and recovery

Project credentials, permissions and budgets must still permit execution when processing starts. Insufficient funds or exhausted resettable limits can leave a job queued without consuming an attempt. A top-up or authorized budget change can make it eligible again. Spending ceilings are not estimated-cost reservations: concurrent accepted requests can finish above the remaining balance or limit.

This async API provides at-least-once execution: an interrupted request may be attempted again after the provider accepted it. Duplicate-billing protection does not make your application’s external tool actions exactly-once. Make those actions idempotent. Ordinary request pricing applies; the batch coefficient does not apply to async: true.

Company image work

Images is not part of the background API described here. Use model_gate.async on the dedicated Images endpoints and read results under the same authorized actor/key/group using the Images operation URLs, not Partner result URLs. For images_dedicated_api_required on older requests, contact Support and check previous results before deliberately starting new work; do not assume the earlier request was free or unexecuted. Audio transcription is available only through the dedicated transcription API, not this queue. An audio path executed through the generic queue is rejected with audio_dedicated_api_required; do not requeue it as a new paid intent.

Dedicated Video operations are not accepted by this generic queue. Use the JSON Video API with its own Idempotency-Key and operation history; an attempted legacy Video dispatch fails with video_dedicated_api_required before a supplier request. Video API.