API reference

Management API

Manage SDK keys, proxy keys, webhook endpoints and risk weights from code, with a management key, for infrastructure as code and automation.

The management API does from code what Integration and Smart Signals > Suspect Score do in the dashboard: issue and revoke SDK keys and proxy keys, register webhook endpoints, and set risk weights. Use it from infrastructure-as-code tools, deployment pipelines and scripts, so a staging environment and its keys, endpoints and policy can be created the same way every time.

ResourceOperations
SDK keysList, issue, revoke, replace allowed origins
Proxy keysList, issue, revoke
Webhook endpointsList, create, update, pause, delete, rotate the secret, send a test event, redeliver, list deliveries
Risk weightsRead, save and restore the organization's and each SDK key's weights, list signals

Base URL

The management API is part of your region's API, under /api/v1/management.

Base URL
https://us.api.fingerly.io/api/v1/management

A management key is refused by any other region's API.

Management keys

Every request is authenticated with a management key in the x-api-key header. Management keys look like fly_mk_us_…: they belong to your organization and region, and to no environment, because they manage keys in all three.

  • Owners and admins issue them in Integration > Management keys. The key is shown once.
  • A management key cannot issue or revoke management keys, so a leaked one cannot replace itself.
  • Management keys are for servers. A request carrying a browser Origin header is refused, however valid the key.
  • Only a keyed hash of each key is stored, as for every other key. See security.

Roles

Each management key acts with a role, chosen when it is issued, and may do exactly what a member with that role may do.

CapabilityAdmin keyDeveloper key
List, issue and revoke SDK keys, and change allowed originsYesYes
Manage webhook endpointsYesYes
Read risk weights and the signal listYesYes
Change risk weights and thresholdsYesNo
List, issue and revoke proxy keysYesNo

A request the role does not allow answers 403 with the code insufficient_role.

Describe the key

GET/api/v1/management/key Management key

Every other route names your organization in its path. Read its ID here, so a tool configured with nothing but a key can find it.

Response

  • key_idstring
    The management key's ID.
  • organization_idstring
    The organization every management route acts on.
  • namestring
    The key's name.
  • rolestring
    admin or developer.
  • regionstring
    The key's data region, such as us.

Conventions

  • Request and response bodies are JSON, and errors use the usual error body.
  • Secrets, of SDK keys, proxy keys and webhook endpoints, are returned once, in the response that creates them. Every later read shows only their last four characters.
  • Revoking is permanent and nothing is deleted, except webhook endpoints, which are removed.
  • Changes take effect on the next request: a revoked key is refused and saved weights score the next identification.
  • Changes made with a management key are attributed to no member: created_by and revoked_by are omitted.

Errors

StatusCodeWhen
401unauthorizedThe key is missing, unknown, revoked, expired, from another region, or sent from a browser.
403insufficient_roleThe key's role does not allow the operation.
404not_foundNo such resource in the key's organization, including a path naming another organization.
409VariesThe resource is in a state that forbids the change, such as an SDK key that is already revoked.
422VariesThe body is not valid. error.message says what to fix.