Sandbox and production

mj_test_ keys: same data, simulated AI generations without credits, a quota of 100 calls a day, then going live with a mj_live_ key.

api.memojin.com/v1 · Contract 1.0.0-beta.2 · Beta

Sections · Sandbox

The sandbox opens as soon as your organization is created, with no commitment. Same address (https://api.memojin.com), same operations, same responses as production: only the key changes, mj_test_… instead of mj_live_….

What changes with a test key

  • Simulated AI generations. POST …/memocard-generations and POST …/question-generations check that the content exists (same 404 as in production), then start nothing: the 202 response returns a job that is already succeeded, estimate.units is 0 and the header reads Memojin-Credits-Estimate: ai_card=0. No model is called, no credit is used.
  • Daily quota. 100 requests a day per organization, reset at midnight UTC, on top of the per-minute limit. Beyond: 429 test_quota_exceeded.
  • Separate idempotency. An Idempotency-Key used in test never replays a live response, and the other way round.

The same data as the account

Following a simulated job

The identifier of a simulated job starts with 5a4db0c5-. GET /v1/jobs/{jobId} recognizes it with a test key and returns it succeeded at once, at 100%: your polling loop can be tested end to end.

GET/v1/jobs/{jobId}Scope jobs:read
Request
curl "https://api.memojin.com/v1/jobs/5a4db0c5-0001-8a3f-8c21-4b7d9e0f1a2c" \
  -H "Authorization: Bearer $MEMOJIN_API_KEY"
Response 200
{
  "id": "5a4db0c5-0001-8a3f-8c21-4b7d9e0f1a2c",
  "type": "memocard_generation",
  "status": "succeeded",
  "progress": 100,
  "contentId": null,
  "error": null,
  "createdAt": "2026-10-05T09:00:00.000Z",
  "updatedAt": "2026-10-05T09:00:00.000Z"
}

Going live

  1. Write to us at contact@memojin.com: your integration, its use, its expected volume.
  2. Our team checks the organization and the use, then opens it for production.
  3. You receive a mj_live_… key (shown once). Replace the test key: nothing else changes in your code.