API preview

The shape of the API as it stands today. Passlane is pre-launch — the endpoints below are not live yet, and details may change before early access opens.

Authentication

Every request carries a bearer token in the Authorization header. Sandbox keys are issued first; production keys follow as capacity allows. There is no SDK requirement — the API is plain JSON over HTTPS.

Create a pass

A single POST renders, signs, packages and hosts the pass. The response carries a wallet_url you hand to your user.

REQUEST · cURL
curl https://api.passlane.dev/v1/passes \
  -H "Authorization: Bearer pk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "template": "gold-membership",
    "external_id": "customer_123",
    "fields": {
      "name": "Alex",
      "tier": "Gold",
      "points": 1250
    }
  }'
RESPONSE201 Created
{
  "id": "pass_7Hk29X",
  "status": "active",
  "wallet_url": "https://wallet.passlane.dev/p/pass_7Hk29X"
}

Update a pass

Passes are mutable after installation. Change a field and installed passes receive the update — device registration and push are handled for you.

What you do not have to build

Certificates, PKCS#7 signing, pass.json, manifest.json, .pkpass packaging, device registration, the Apple Web Service endpoints, push updates and certificate renewal are all handled on our side. That list is the reason this exists.

Not available yet

These endpoints are not accepting traffic. Join the waitlist and we’ll reach out as access opens.