Test mode
Test mode runs the same API with the same validation, so a payload that works in test mode works live. The differences:
| Test mode | Live | |
|---|---|---|
| Emails to signers | Never sent | Sent |
| Billing | Never billed | $1 per envelope sent |
| PDFs | Watermarked “test” on every page | Clean |
| Webhooks | Fire, marked test_mode: true |
Fire |
| Rate limit | 60 requests a minute per test key | 600 requests a minute per live key (its test-mode requests count here too) |
How a request ends up in test mode
Section titled “How a request ends up in test mode”- Every request made with an
sk_test_key. - A request made with an
sk_live_key that sendsSign-Test-Mode: true. Any other value is ignored.
GET /ping and GET /me tell you which mode you are in with test_mode.
Test data stays test data
Section titled “Test data stays test data”An envelope created in test mode carries test_mode: true for its whole life; it cannot be switched to live, and the database itself refuses to bill it. Test and live data share your account; the request log can be filtered by mode (GET /requests?mode=test).
Some of the table above describes parts that are still arriving (sending, watermarked PDFs, webhooks); see Coming next. What is true today: test requests are never billed and never email anyone.