> ## Documentation Index
> Fetch the complete documentation index at: https://docs.osaconnection.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing with test accounts

> Build and test against production safely, with test keys and test adjusters inside your own firm.

You test your integration against the real OSA service and the real OSA app, using **test accounts** inside your own firm. There is no separate sandbox to keep in sync, and the app your adjusters use is the one you test with.

## Test accounts

OSA creates test adjuster accounts, adds them to your firm, and sends your firm their sign-ins to share with the developers and testers who need them. They behave like real adjusters: they receive claims and notifications, accept and reject claims in the app, and receive the same emails. Your staff sign in to the OSA app as a test account to play the adjuster's part.

## Test keys

An `osa_test_` key can only:

* send claims to your test accounts;
* read and re-offer test claims;
* list your test accounts;
* invite your test accounts.

Real claims and real adjusters are invisible to a test key. Reading a real claim returns `404 not_found`, sending a claim to a real adjuster returns `422 adjuster_not_in_firm`, and inviting any OSAID that isn't one of your test accounts returns `422 unknown_osaid`, exactly as if it didn't exist.

A live key, in turn, can't send or offer claims to test accounts, invite test accounts, or offer test claims: that returns `422 environment_mismatch`.

Test and live claims never collide as duplicates: `external_id` and open `claim_number` values are checked separately in each environment.

## Test claims

A claim sent with a test key to a test account is a **test claim**, permanently:

* it is marked `"test": true` in every response, and labelled TEST in the app;
* it can only be offered to other test accounts;
* it is never billed and is left out of OSA's reporting and exports;
* live keys also see it in lists, marked `test: true`, so your production code should skip test claims.

OSA may remove old test claims periodically.

### Carrier details in test claims

Carrier details are kept for your firm as a whole, not separately for test and live claims. Details sent on a test claim can fill in what is missing for a carrier of the same name on your live claims. In test claims, use a carrier name you don't use on live claims, or send the carrier's real details. See [Carrier details](/carrier-details).

## Limits

Test keys have lower rate limits than live keys: 60 requests per minute, of which 30 can be writes. See [Limits and idempotency](/limits-and-idempotency).

## Trying requests in these docs

The API reference has a playground. Use **test keys only** there: paste your `osa_test_` key and press Send. Never paste a live key into a browser.

## Before you go live

When your test runs are complete, OSA reviews your integration with you, including how it handles retries, `Idempotency-Key`, `429` responses and rejected claims. Then you receive your live key.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.