Sandbox Studio
Explore Plaid products from the Dashboard, without writing code or handling API secrets
Overview
Sandbox Studio is the Sandbox environment's home in the Plaid Dashboard. It runs Sandbox API calls on your behalf, using your team's Sandbox credentials, so you can see a product's real request and response without setting up a server, storing an API secret, or hand-writing a request body.
Sandbox Studio is the recommended starting point for evaluating a Plaid product or understanding what an endpoint returns. It is not a replacement for integrating against the API: everything Sandbox Studio does is an ordinary Sandbox API call, and once you know the shape of a flow, you can reproduce it from your own code against sandbox.plaid.com. See Sandbox overview for the environment itself.
Access requires the sandbox_keys permission on your Plaid team.
Test users
The Users tab lists the test users available to your team, in three groups.
| Group | Naming | Editable | Scope |
|---|---|---|---|
| Test credentials | user_* | No | All Plaid teams |
| Your custom users | Any | Yes | Your team |
Test credentials are Plaid's pre-populated logins, such as user_good and user_transactions_dynamic. Their data may update dynamically — for example, when you call /transactions/refresh. They are documented in full at Sandbox test credentials.
Custom users are your team's own personas. The Create user page offers three ways to build one: describe the account you want in plain language and let Plaid draft the configuration for you, start from a template, or write the configuration object by hand. Basic mode drafts a whole user from a single description; Advanced mode prompts for each account separately. Once a user has been drafted, Refine applies a follow-up instruction to it — adding a joint-account owner, or a set of transactions — rather than regenerating from scratch.
Templates are ready-made personas covering common shapes: a gig worker, a retiree, a joint account holder, a small business, a student loan borrower, and others. Selecting one fills in the form so you can edit from there, and the result is saved as your own custom user. Their data does not update dynamically.
Custom users created here are the same objects described in Create Sandbox test data; a user saved in the Dashboard can be used from the API by passing its username as options.override_username to /sandbox/public_token/create.
From any user you can:
- Launch Link to run the Link flow with that user's credentials pre-filled.
- Skip Link to mint an Item directly through
/sandbox/public_token/create. - Clone it into a new custom user.
Sandbox Profiles
The Profiles tab manages Sandbox Profiles — saved returning-user profiles that let you test the returning user experience and Layer against a realistic set of connected accounts. A test user is a bank login; a profile is a user who has connected accounts to Plaid before. See Sandbox Profiles for details.
API explorer
The API explorer runs live Sandbox calls against an Item and shows the full request and response. Each response is the actual JSON returned by the Sandbox API, and every request can be copied as a cURL command to run yourself.
The explorer has two tabs.
Endpoints runs a single endpoint against a single Item — /accounts/get, /auth/get, /identity/get, /item/get, /transactions/sync, /transactions/recurring/get, /investments/holdings/get, /investments/transactions/get, and /liabilities/get. Use it to inspect one response in isolation.
Scenarios runs an ordered, multi-step flow for a product, carrying values such as access_token and authorization_id from one step to the next. Available scenarios:
| Scenario | Covers |
|---|---|
| Auth | /auth/get, micro-deposit event tracking, and Link-less Database Auth via /auth/verify |
| Balance | /accounts/balance/get |
| Identity | /identity/get and /identity/match |
| Transactions | /transactions/sync, /transactions/get, /transactions/recurring/get, /transactions/refresh, and /sandbox/transactions/create |
| Investments | /investments/holdings/get and /investments/transactions/get |
| Liabilities | /liabilities/get |
| Assets | The full Asset Report lifecycle, including audit copies and PDF export |
| Statements | /statements/list and /statements/download |
| Signal | /signal/evaluate, with /signal/prepare and the report endpoints shown for reference |
| Transfer | Authorization, creation, event simulation, refunds, and cancellation |
| Processors | Processor token creation and the /processor/* endpoints |
| Consumer Report | /cra/check_report/create and /cra/check_report/base_report/get, with /user/create and webhook simulation via /sandbox/user/fire_webhook |
Scenarios and users are independent: pick the user whose data you want, then pick the scenario you want to run against it.

Consumer Report is the exception. A Consumer Report is built for a user rather than for an Item, so that scenario works against a Plaid Check user and the Items attached to it, and one report covers every eligible Item that user owns. Generation is asynchronous, so the report is polled rather than returned by the create call.
Configuration
The configuration page controls how Items are created for a session — the /link/token/create body used by Launch Link (products, country codes, language, Link customization, and webhook URL) and the /sandbox/public_token/create overrides used by Skip Link. Changing configuration here does not affect your integration; it only changes the calls Sandbox Studio makes.

Using the Sandbox API directly
Sandbox Studio does not gate anything. Every flow it demonstrates is available over the API, and testing directly against sandbox.plaid.com remains the right approach for automated test suites and for integration work. See Bypassing Link for creating Items without the Link UI, and the Sandbox API reference for the full list of Sandbox-only endpoints.
For running Sandbox endpoints from an AI-powered coding agent, see the Sandbox MCP server.
