API reference

Authenticator backup

The Authenticator phone app's encrypted backup: read it, save it at the next revision, delete it.
GET/v1/me/authenticator/vault

Your Authenticator backup: version (the format), salt and ciphertext (base64, encrypted on the phone with a key from your passphrase), revision and times; null when there's none. From the Authenticator app's sign-in only.

Auth
A person's token or an API key, as Authorization: Bearer.
Get an API key

Errors

  • 403The authenticator backup opens only in the Authenticator app.
curl 'https://api.cactive.com.au/v1/me/authenticator/vault' \
  -H "Authorization: Bearer $CACTIVE_TOKEN"
Send it from this page with your session or a key.

Response 200

{
  vault: null | {
    version: number
    createdAt: number
    updatedAt: number
    ciphertext: string
    revision: number
    salt: string
  }
}
PUT/v1/me/authenticator/vault

Saves the backup (version 1, salt, ciphertext) if revision is still the current one (0 when there's none) and returns it at the next revision. Otherwise 409 with the backup there now (vault, or null): nothing is overwritten unseen. From the Authenticator app's sign-in only.

Auth
A person's token or an API key, as Authorization: Bearer.
Get an API key

Request body (up to 260 KB)

  • version1required
  • saltstringrequired

    24–88 characters. Matches ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$.

  • ciphertextstringrequired

    40–262,144 characters. Matches ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$.

  • revisionintegerrequired

    ≥ 0.

Also checked: Unknown fields are rejected.

Errors

  • 403The authenticator backup opens only in the Authenticator app.
  • 409The backup changed since this phone last saw it.
  • 413The backup is too large.
curl -X PUT 'https://api.cactive.com.au/v1/me/authenticator/vault' \
  -H "Authorization: Bearer $CACTIVE_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{
    "version": 1,
    "salt": "example",
    "ciphertext": "example",
    "revision": 1
  }'
Send it from this page with your session or a key.

Response 200

{
  vault: {
    version: number
    createdAt: number
    updatedAt: number
    ciphertext: string
    revision: number
    salt: string
  }
}
DELETE/v1/me/authenticator/vault

Deletes the backup from your account; deleted: false when there wasn't one. The accounts on the phone stay.

Auth
A person's token or an API key, as Authorization: Bearer.
Get an API key

Errors

  • 403The authenticator backup opens only in the Authenticator app.
curl -X DELETE 'https://api.cactive.com.au/v1/me/authenticator/vault' \
  -H "Authorization: Bearer $CACTIVE_TOKEN"
Send it from this page with your session or a key.

Response 200

{
  ok: true
  deleted: boolean
}