warden

Integrate

Quickstart

Make a key, rehearse one record with a dry run, write it, and open its public page.

This takes one member from your system to a public verification page. Every request here is safe to repeat.

  1. Make a key

    An admin makes the key in Commercial, under Your integration. The API is part of the Creator and Studio plans. See Make a key. The key looks like wik_ followed by 64 hexadecimal characters, and it is shown once.

    Keep it in a server-side secret:

    export WARDEN_KEY="wik_..."
  2. Rehearse one record

    Add ?dry_run=1 and Warden checks the key, reads the record the way a write would, and stores nothing.

    curl -sS "https://3dwarden.com/api/v1/integration/entitlements?dry_run=1" \
      -H "Authorization: Bearer $WARDEN_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "records": [{
          "external_id": "member-1001",
          "status": "active",
          "normalized_state": "active",
          "capabilities": ["physical_sales"],
          "credential": { "holder_name": "Example Print Shop" },
          "identities": [{ "source": "website", "url": "https://shop.example.com", "public": true }]
        }]
      }'

    would is create because this key's provider does not hold member-1001 yet. identity is what Warden read out of the shop address, and what it will compare that storefront on.

  3. Write it

    Save the same body as record.json and send it without dry_run.

    curl -sS "https://3dwarden.com/api/v1/integration/entitlements" \
      -H "Authorization: Bearer $WARDEN_KEY" \
      -H "Content-Type: application/json" \
      -d @record.json

    Store public_id against your member. It is minted once and never changes while Warden holds the record, through lapses, reactivations and withdrawals.

  4. Open the public page

    Open verify_url in a browser. It says two separate things: whether the certificate is genuine, and whether the membership is active now. See The verification page.

Next