API keys
Create API key
Create a new scoped API key with the Python SDK.
POST
/api-keysUse blnk.api_keys.create to create a scoped API key.
Call the method
response = blnk.api_keys.create({
"name": "Service Account",
"owner": "merchant_a",
"scopes": ["ledgers:read", "balances:write"],
"expires_at": "2026-12-31T23:59:59Z",
})
| Field | Type | Description |
|---|---|---|
name | str | Descriptive name for the key or service account. |
owner | str | Owner identifier you assign, such as a team, service, or user ID. |
scopes | string[] | List of permissions in resource:action format (for example ledgers:read). |
expires_at | str | Expiration timestamp (ISO 8601, for example 2026-12-31T23:59:59Z). |
Store the plaintext key
Save response.data["key"] immediately. It is only returned at creation and cannot be retrieved later.
Response
{
"api_key_id": "api_key_879f0ecb-e29f-4137-801b-1048366381db",
"key": "YVLIhuIplUzLRCcT9r7DQ_jsGKCXAn39JQ3n_o-Ll2Q=",
"name": "Service Account",
"owner_id": "owner_id",
"scopes": ["ledgers:read", "balances:write"],
"expires_at": "2026-03-11T00:00:00Z",
"created_at": "2025-11-18T13:39:50.390457762Z",
"last_used_at": "0001-01-01T00:00:00Z",
"is_revoked": false
}
| Field | Type | Description |
|---|---|---|
api_key_id | str | Unique ID for the key. Use it to revoke the key. |
key | str | Plaintext secret. Store it now. It is only returned at creation. |
scopes | string[] | Permissions granted to the key. |
expires_at | str | Date and time the key expires. |
is_revoked | bool | Whether the key has been revoked. |