ShinrAIHosted on STACKIT

Usage, reliability, and data handling

Understand records, tiers, errors, retries, credentials, retention, and offline activation.

Records, tiers and billing cycles

A base record is up to 1.000 Unicode code points per text, rounded up separately for each text, with a minimum of one. The API tier applies its weight to that base count. Fractions are preserved in tenths of a record.

Native API tier metering and limits
TierRecord weightNative request limit
Standard1,064 texts · 200.000 code points per text
Batch0,5200 texts · 200.000 code points per text
Real-Time1,64 texts · 4.000 code points per text

For example, two 800-character texts use 2 Standard records, 1 Batch record or 3,2 Real-Time records. Native Batch is a lower-priority processing tier; asynchronous Azure jobs are a separate request lifecycle.

Plan allowance is used first, then pack records. Monthly allowance resets at the billing boundary and does not roll over. Packs do not expire. An upgrade requires payment and starts a new cycle with the full new allowance; a downgrade or cancellation takes effect at the current period’s end. Review the charge preview in Dashboard before confirming a change.

See consumption in Dashboard or GET /v1/usage. The billing portal provides invoice PDFs, company details and payment methods. Appropriate tax is calculated during checkout and invoices are emailed after purchase.

Errors and retries

Native API errors use {"error":{"code":"…","message":"…"}}. Azure-compatible endpoints use their own error envelopes. Preserve X-Request-Id for troubleshooting.

StatusAction
401Check the key, revocation status and environment.
402Add records; the error identifies the required and available amount.
403Check whether the plan includes the requested tier.
413 / 422Correct the input or split the request within documented limits.
429Respect Retry-After, then retry with backoff and jitter.
503Temporary service failure. Respect Retry-After when present.

Validation failures and work rejected before processing do not consume records. A connection loss is not proof that processing failed: keep the request reference and check usage before blindly retrying a large workload. Synchronous results are not stored for replay.

Data handling and keys

Synchronous text and replacement mappings are processed in memory. Operational usage records contain identifiers, counts and timings rather than document contents. Asynchronous job inputs and results require encrypted temporary storage and expire after 24 hours. Your application controls retention of its returned results and mappings.

Create and revoke API keys in Dashboard. Starter supports one key; higher plans support up to five. Production keys start with shr_live_, sandbox keys with shr_test_. They belong to separate environments. Do not embed them in browser applications, URLs or support messages.

Offline activation

The offline container runs on your infrastructure. Its API key protects local management endpoints as well as inference. Keep its persistent state volume with the installation.

  1. Read GET /offline/challenge with your local API key and save the installation challenge JSON.
  2. Buy an offline pack, then open the On-premises activation card in Dashboard. Select the paid pack, upload the challenge JSON and download its issuer-signed activation file.
  3. Import it using POST /offline/license with {"license":<signed envelope>}.
  4. Read GET /offline/status for used, reserved and available quota. A new signed file adds purchased quota.

The challenge binds the activation to the installation identity; signed files have a sequence number to prevent replay on intact state. Full host control, snapshots and cloned storage impose limits on purely offline enforcement. Protect the state volume and follow the documented replacement/recovery procedure instead of copying activations between installations.

Contact activation support or work with a certified implementation partner.

Test your integration

Start with synthetic data and verify detection, replacement and usage before sending production traffic.

For coordinated QA testing, request separate test access from our team. Test credentials and checkout vouchers are provided with the private testing guide.

Open DashboardGet support