AI Content Drop Sandbox and Test Mode
Send X-Sandbox: true (or ?sandbox=true) on a generation request and nothing happens for real: no provider call, no credits, no row in your history. You get back a well-formed, obviously synthetic job so you can exercise your parsing, your retry logic, and your polling loop before you spend anything.
It works without a key
This is the one authenticated-looking endpoint that answers anonymously, deliberately: an agent evaluating whether to integrate should be able to see the response shape before a human has been asked for a credential.
curl -sX POST https://aicontentdrop.com/v1/generate/video \
-H "Content-Type: application/json" \
-H "X-Sandbox: true" \
-d '{"prompt":"a cat surfing"}'
{
"sandbox": true,
"video": {
"id": "sandbox_…",
"status": "completed",
"aiModel": "kling_3_0",
"creditsUsed": 0,
"videoUrl": "https://aicontentdrop.com/sandbox/placeholder.mp4",
"note": "Sandbox mode: nothing was generated and no credits were spent."
}
}
The response carries X-Sandbox: true as a header as well as "sandbox": true in the body, and the asset URL is a placeholder — a caller that mistakes a sandbox result for a real asset finds out immediately rather than after shipping it to a customer.
What is still enforced
Validation. A sandbox request with no prompt is a 400, exactly as a real one would be. That is the point: the sandbox exercises the contract, not just the transport.
Everywhere it works
- REST:
POST /v1/generate/videoandPOST /v1/generate/image, with the header or the query parameter - GraphQL:
generateVideo(input: { prompt: "…", sandbox: true }) - MCP: not exposed as a tool argument — use the REST or GraphQL form while you are wiring up
Related
Pair it with Idempotency-Key to rehearse your retry path too: the same key returns the first response rather than starting a second job. See the REST reference.