Skip to main content
In this guide you create a Simulation of the stripe-core catalog Simulator, create and list a customer through its isolated endpoint, retrieve and regenerate the Simulation token, and delete the Simulation. No request reaches Stripe.

Before you start

You need a Continuous workspace and curl 7.82 or later. To follow the CLI tabs, install the Continuous CLI. Replace placeholders such as <simulator-id>, <id>, <endpoint>, <token>, and <key> with values from your responses before you run each command. This guide uses stripe-core, a catalog Simulator every workspace can read. It serves selected Stripe v1 and v2 operations, including GET /v1/customers and POST /v1/customers.
1

Create an API key

Open the app. Open the workspace menu and choose Settings, then API keys. Enter an optional name and select Mint API key. Copy the key now; the app shows it once.For curl, replace <your API key> and set:
For the CLI, run this command and enter your key at the prompt:
2

Choose your Simulator

List the ready Simulators:
Find the entry whose source is catalog and whose name is stripe-core, and copy its id, which starts with smr_. Use it in place of <simulator-id> in the next step. Names are labels, so the ID is the only reference; any other ready Simulator works the same way.
3

Create a Simulation

Expect status to be running. Copy these values from the response:
  • id: the Simulation ID, which starts with sim_. Use it for <id> below.
  • endpoint: the URL for this Simulation. Use it for <endpoint> below.
  • token: the credential for requests to that endpoint. Use it for <token> below.
Keep the token private; ordinary reads never return it.
The API key authorizes calls to https://api.continuouslabs.ai/v1/.... The Simulation token authorizes requests to this one Simulation endpoint; send it in the X-Continuous-Simulation-Token header.
A 409 means the Simulator is not ready. A 429 with simulation_capacity means Continuous has no free capacity; retry after a short delay. A 429 with simulation_quota_exceeded means the workspace is at its active Simulation limit; stop or delete a Simulation and retry. A 504 means the runtime did not start in time; retry the request. The Create Simulation reference lists every response.
4

Send a request

Create a customer, then list customers. Stripe v1 routes take form bodies. The Simulation does not check Stripe API keys; send only the Simulation token.
The list response includes the customer under data. This excerpt shows the fields to look for:
The customer exists only in this Simulation. Another Simulation of the same Simulator starts without it. The CLI calls the control plane only; send data-plane requests with any HTTP client.
5

Check the current state

The response includes the current status and endpoint. It never includes a token.

Retrieve or regenerate the Simulation token

The token from Step 3 does not expire, and stop and start keep it. Retrieve it again at any time, even while the Simulation is stopped:
To rotate the token, regenerate it. Choose a unique <key>, such as a UUID; retrying with the same key returns the same new token instead of rotating again.
Copy token from the response and use it for <token> in later endpoint requests. The previous token now answers 401 auth_invalid.

Clean up

A successful delete returns 204 No Content with no response body. This removes the Simulation and its saved state. The Simulator stays available for the next Simulation.

Understand Simulations

Stop, start, and fork a Simulation from its latest state or a recorded step.

Understand Worlds

Start one Simulation for each of several Simulators and control them together.