B2BB2B LLM

Audio transcription in Playground

Upload audio, inspect a price, transcribe and read your own saved result.

Project audio workspace

Audio is a separate Playground tab. Choose an authorized project key in your company. Your membership, project/group permissions and current session determine which offers and operations you may use. Billing belongs to the company owner; an employee remains the actor of their request. A company administrator does not automatically inherit another employee’s private transcription history.

Start with a new form, choose a model and an offered route, then attach one recording. The supported file formats, response formats and optional controls come from that offer. The service accepts supported WAV, MP3, FLAC, OGG, M4A and WebM audio, up to the smaller of the offered limit and 25 MiB / 30 minutes. A compatible filename does not prove the file is valid. Audio must decode completely, contain one mono/stereo audio stream and no other streams; encrypted, corrupt or unsupported content is rejected. Your service may impose a smaller upload limit.

Check file and price uploads and validates the recording without requesting transcription from a supplier. Keep the tab open until this finishes. It is not a paid generation, balance debit or reservation. Launch transcription is the separate explicit paid action. Changing the file, settings or route invalidates the price check. A changed tariff or quote at launch is rejected rather than silently charged at the new value.

Known prices are exact USD strings. For a recording-priced offer, seconds may be rounded up by the disclosed pricing step. Offers priced from supplier duration or token usage remain unknown until that usage is returned; acknowledge an unknown amount explicitly. A byte count is not a duration or token count. Usage Limit valuation and money are different. No estimate is presented as a guaranteed maximum.

Language, a vocabulary/context prompt, temperature and word/segment timestamps appear only when supported. Timestamps require verbose_json. The response choices may include JSON, verbose JSON, plain text, SRT and VTT. This release is transcription, not speech synthesis, streaming speech, translation or speaker identification.

Result and history

An accepted request has a saved operation ID. The page reads its state until the result is ready; closing the browser does not cancel already accepted work. The completed transcript is fetched automatically; Read saved result remains a manual retry. Copy/Download do not create another transcription. JSON keeps the complete returned body; text/subtitle formats keep their original text. Empty text can be a valid silent recording.

History is separate from the form. Reading an old result does not disable new input; New request clears the draft without sending or deleting anything. If your launch response is lost before an operation ID is known, check the existing submission rather than starting it under another identity. A browser refresh restores an opaque operation pointer, not the recording, prompt or a reconstructed raw request. Do not bypass an unknown paid outcome with a fresh intent.

A review or unknown outcome needs Support; provide the operation ID and safe error code, not keys or recordings in a public message. There is no automatic paid resend. A positive balance is not required to read an existing result, but current access still is. Results normally expire 24 hours after creation; metadata and the intent identifier remain. Missing or expired results are not regenerated by a read action.

Saved for settlement means an accounting input was recorded, not that the balance was already updated. A displayed price quote remains distinct from calculated cost and settled money.

Raw request, cURL and Raw response

The inspector offers separate tabs. Raw request is an honest multipart field/file summary. After preparing the launch, Save exact body downloads audio-request-body.bin with the precise multipart boundary and uploaded bytes. Its cURL command uses that file and the same Idempotency-Key; run it from the directory containing the file. It requires your own MODEL_API_KEY, not a hidden browser grant. Executing cURL can incur a charge; copying never executes it. Changing the key or actor does not replay the old operation safely.

The full endpoint is selected by your current service profile. On this service it normally uses https://api.b2b-llm.com; a configured custom domain uses its own URL. Do not replace it with another brand’s host. The browser never displays the permanent key secret.

Raw response preserves the actual UTF-8 body, including whitespace and API errors. It distinguishes the price check, submission, state/lookup and automatically or explicitly read saved result. A 128 KiB preview can be shortened while Copy/Save includes the entire captured response within 4 MiB. Interrupted, oversized or invalid UTF-8 content is not offered as a complete text capture. Private content stays in tab memory, not browser storage; your own clipboard/downloads remain sensitive.

See the transcription API and state reference.

Troubleshooting a project recording

The chosen project offer may prepare a WAV from one of its accepted upload formats. Before paid submission, inspect the file/price result for the outbound format and bytes. WAV preparation uses mono16kHz16-bit PCM, without changing the duration used for a decoded-duration price. Compressed recordings can expand beyond the permitted output size; they are rejected without truncation. Your company's upload may also meet a smaller HTTP limit.

The page retains the actual price-check body and received error in the Raw tabs. Its cURL is a nonpaid quote command using the current service profile, not a Launch command or another project's key. Read HTTP status and a specific code:413 indicates body size, while codec, decoding and timeout failures have separate reasons. If no HTTP reply is readable, connection or cross-origin delivery needs investigation; the page does not invent a status. Supply Support with the operation/error identifier rather than exposing private speech or credentials.

Receiving results in the company workspace

A finished operation loads its transcript into the current employee's view automatically. Copy transcription and Download result keep their usual access checks. Looking at project history does not lock the new-request form, and a status refresh leaves a previously loaded transcript in place. Changing the selected key removes the old private content.

A progress dialog accompanies an explicit check or launch. Its queue, processing and result stages reflect received state, with elapsed time instead of a guessed percentage. Close/Escape does not cancel the company's accepted job or submit a duplicate. Show progress returns to the same operation. The window closes after the saved text loads; failures remain available for inspection and manual read retry.

The upload note shows two different bounds: bytes of the accepted recording and bytes of the complete multipart request. The second includes form fields and framing and can be smaller than the advertised25MiB file ceiling. The exact prepared body is tested before sending; a delivery service can still return its own HTTP413. Reducing or converting the input is not proof that the current upload path allows its resulting size.

The accounting line observes the actual settlement event for this employee/key context. Awaiting settlement is not a company debit. Debited includes a recorded settlement time; a zero-cost or Usage-Limit-only event is labelled separately. An unavailable or retained-away record cannot establish no expense. Bounded low-frequency updates continue after the result; use Refresh status to check again later, without another transcription.

When Launch is unavailable

For the selected project key, the explanation beside Launch identifies the required step: select a recording, then click Check file and price. A successful check enables Launch unless an unknown-cost confirmation is needed. Changing the file or settings invalidates the previous check; file checking alone does not transcribe. A different key or changed project settings require their own price check; viewing project history does not submit work.

Reviewing work on project keys

Your history spans your own operations on the active company keys you are currently permitted to use. The key filter is separate from the key selected for a new submission. Older operations loads another page without making a new paid request. The view does not combine colleagues' recordings merely because they share a billing owner. Membership, project access and key changes remain authoritative; removed access is not restored by an old history entry.

Configured character limits may differ by route; some routes apply no extra character cap. Upload and request-body limits remain in effect, as do the supplier's requirements. No prompt is cut silently. A revised draft needs a current quote before it can be launched.

Prompt and compact operation details

The prompt counter shows prompt_max_chars and the current Unicode character count. Numeric caps constrain typing, paste and completed composition without splitting emoji; null removes only the additional character cap. An existing draft on a stricter route is retained and its exact blocking reason is shown. Audio prompt_max_chars0 disables optional context. Disabled Launch always has an adjacent reason. Accounting details reads the full authorized accounting view; compact status replies omit those fields and do not claim zero cost or completed settlement. Generated requests keep quote/route/idempotency binding but do not send max_cost_usd.

Get the result · Raw / cURL

After launching or selecting an operation in history, open Get the result · Raw / cURL immediately after Request and response in the result column. Operation history is the last block, spanning the full workspace width below both the form and results. Choose Operation status or Saved result. The result command saves the original JSON, text, SRT or VTT response; its filename follows the selected response format when known. It does not download the source recording.

The displayed Operation key ID belongs to the history item, not necessarily to the project key chosen for a new form. Use that operation's authorized company key and original employee/actor context. Membership and project access still apply; another employee's rights are not transferred by copying. The API origin is https://api.b2b-llm.com for this profile, or the configured API origin of your current domain. No fallback to another profile is used.

The Raw block contains the bodyless GET endpoint and a safe Authorization placeholder. The cURL block uses your locally supplied MODEL_API_KEY and saves the response to a file. Browser tokens and key secrets are never copied. The commands have no create body, Content-Type, Idempotency-Key, quote or cost limit. Copy Raw and Copy cURL only copy text; selecting a command neither starts a download nor launches new work.

These are generated examples for another read, not the original request log. A command can be shown while a job is pending; it does not prove the result exists. Check status first and handle unavailable, expired or access-denied replies as errors, not media. --fail-with-body can write an HTTP error to the output file; check its exit status before opening that file. A failed read is not permission for another paid create. See the result API for complete examples.