DotMock

Controlled environment for AI development

Run the whole loop.Break nothing real.

Mock every dependency around your backend so coding agents can integrate, retry, fail, and recover without touching production or spending against real providers.

DotDotMock guide
Ready to model

What should your agent test?

Describe a dependency, a state change, or the failure you need to reproduce.

A guided product demo · nothing is sent to a real provider

Mock third-party dependencies in development

Your app needs the dependency.Your dev loop doesn't.

Payment gateways, identity providers, CRMs, AI APIs, and partner services bring credentials, rate limits, costs, slow sandboxes, and unpredictable data into development. DotMock gives your application stable stand-ins shaped like the third-party APIs it already calls.

Replace a dependency in four moves

Keep your code. Swap the destination.

Your application still makes the same calls. In development, those calls go to a workspace you can shape, inspect, and reset.

Development routing controlled
01Your appunchanged client code
02DotMockprovider-shaped behavior
development.envPROVIDER_BASE_URL=DOTMOCK_WORKSPACE_URL

Change one environment value. Keep the integration path your application already uses.

01

Describe

Start with the contract your application already expects: operations, payloads, errors, and events.

02

Model

Add the behavior development needs—state, latency, retries, failures, streams, and webhook sequences.

03

Point

Swap the third-party base URL in your development or test configuration. Keep the application code.

04

Exercise

Run the real flow, inspect every exchange, and reset the dependency whenever you need a clean state.

Test the paths provider sandboxes skip

A 200 response is the beginning, not the mock.

Reproduce declined payments, expired tokens, rate limits, partial records, delayed webhooks, dropped streams, and recovery sequences on demand. Every developer and test run gets the behavior it needs without waiting for the provider to produce it.

Scenario library5 models
Card declined402
Expired token401
Rate limited429
Provider timeout504
Webhook delayedevent
Example failure modelPOST /v1/payments
402
ResponseState changeInspect
{
  "error": {
    "code": "card_declined",
    "message": "The card was declined.",
    "retryable": false
  }
}
request matched payment.failed webhook queued

Mock the dependency you actually use

Keep the contract. Control the behavior.

Third-party systems are more than REST endpoints. Preserve the interface your client expects while taking control of its data, timing, state, and failures.

Explore the docs

REST

Payments, identity, shipping, CRM, and any OpenAPI-shaped service.

GraphQL

Queries, mutations, subscriptions, variables, and resolver errors.

SOAP

WSDL/XSD contracts, XML envelopes, enterprise operations, and faults.

gRPC

Protobuf services, metadata, status codes, and streaming behavior.

LLM APIs

Provider-shaped responses, streaming, tool calls, usage, and failures.

Webhooks

Signed events, delayed delivery, retries, failure responses, and inspection.

Pricing

Start free. Upgrade when Dot or scale matters.

Free

For manually building and running one mock workspace.

$0

No card required

Included every month

$1 monthly usage included

All 12 full monthly grants are included

  • One active workspace and no collaborators
  • Manual authoring and isolated dry runs
  • REST, GraphQL, SOAP, gRPC, LLM API, realtime, and webhook mocks
  • No Dot copilot

Developer

For builders running agent loops against controlled dependencies.

$120/year

Two months free

Included every month

$12 monthly usage included

All 12 full monthly grants are included

  • Three active workspaces and no collaborators
  • Dot and provider-backed authoring are charged at provider cost × 5
  • REST, realtime, GraphQL, SOAP, gRPC, LLM API, and webhook mocks
  • State, failures, retries, traffic, and audit history
  • 20 concurrent realtime connections

Team

For teams sharing contracts, scenarios, approvals, and audit history.

$490/year

Two months free

Included every month

$49 monthly usage included

All 12 full monthly grants are included

  • 20 active workspaces and unlimited collaborators
  • Shared Dot usage is charged at provider cost × 5
  • Shared mock workspaces and deterministic scenarios
  • Team approvals, traffic inspection, and audit history
  • 100 concurrent realtime connections

Enterprise

For organizations evaluating custom controls, scale, and support.

Custom usage balance, workspaces, concurrency, unlimited collaborators, controls, support, and invoicing.

Contact sales

Reload when needed

Add $10 for $10. Purchased balance expires after 12 months. Auto-reload stays off until an admin enables it and sets a monthly cap.

How balance is used

Included balance expires at the next monthly grant and is used first. Purchased balances follow in earliest-expiry order. Usage balance is service credit with no cash or transfer value.

Standard interaction$0.10 / 1,000
LLM fixture$0.10 / 1M token-equivalents
Realtime$0.10 / 1,000 opens · $0.01 / 1,000 min · $0.001 / 1,000 messages
Webhook$0.10 / 1,000 triggers + $0.10 / 1,000 attempts
Proxy$0.20 / 1,000 interactions
Dot and provider-backed authoringProvider-reported cost × 5

Dollar calculator

Estimate usage before you run it.

Rates are deducted from one USD-denominated usage balance. Values are estimates; provider-backed work settles from reported cost.

Estimated charge

$1.00

Free balance

Within monthly balance

Developer balance

Within monthly balance

Team balance

Within monthly balance

Stop waiting on someone else's environment

Make third-party behavior part of your test setup.
Not a source of surprise.

Build your first mock

Start in your terminal.

One command installs the CLI and connects it to this browser.

01  Install02  Authenticate

Install and connect

Run this in a terminal. The modal will continue as soon as the CLI checks in.

Creating a secure setup session…

The CLI stores a team-scoped key in ~/.dotmock/config.json. Never commit that file.