API quick start

Build with the T.A.L.A. API

Use this sequence to create your first vault, validate the chain commit, and watch the unlock event. Keep staging keys in place until every check passes.

Environment

Staging mirrors production contracts with mock unlocks for safe rehearsal.

Rate policy

Default 60 requests per minute per key. Higher limits available on review.

Four stage flow

  1. Get access

    Request API access at support@usetala.in. You receive staging and production keys scoped to your team.

  2. Create a vault

    Encrypt locally, then post CID, checksum, and unlock time to the create endpoint.

    curl -X POST https://api.usetala.in/v1/vaults
      -H "Authorization: Bearer YOUR_API_KEY"
      -H "Content-Type: application/json"
      -d '{
        "cid": "bafy...",
        "checksum": "sha256:2f0c...",
        "unlockAt": 1893456000,
        "metadata": {"label": "Exam Set A"}
      }'
  3. Observe state

    Poll or subscribe to confirm pinning, contract commit, and unlock readiness.

    curl -H "Authorization: Bearer YOUR_API_KEY"
      https://api.usetala.in/v1/vaults/vault-312/status
  4. Receive notifications

    Expose an HTTPS endpoint. Webhooks retry with backoff when your endpoint is unavailable.

    {
      "event": "unlock_emitted",
      "vaultId": "vault-312",
      "chain": "polygon",
      "txHash": "0xabc...",
      "timestamp": 1893456000
    }

Launch checklist

Keys stored in environment variables, never in client code.

CID and checksum recorded for every upload.

Webhook endpoint verified with test payloads before production.

Run through one full unlock with staging data before exam day.

Context that helps

Staging unlocks

Use test keys to simulate unlock events and confirm webhook handling before launch.

CID integrity

Send checksums with every CID. The service validates content length and hash before commit.

Access control

Keys are scoped per environment. Rotate or revoke without downtime for students or partners.

T.A.R.A. - Trustworthy AI Response Assistant