Tokens and Permissions

Create token

Creates a new token in the project. Note that it is not possible to create a new master token.

If your admin token does not have the canManageTokens permission, you can only create a temporary token with minimal privileges. In this case, you are allowed to set the description and token expiration via the expiresIn parameter. All other attributes will be ignored.

Creating a token with canManageProtectedDefaultBranch additionally requires an application token with scope storage:tokens:create-protected-default-branch-privileged in the X-KBC-ManageApiToken header.

post/v2/storage/tokens

Request

Request body

OR

Example request

{
  "description": "my-new-token",
  "bucketPermissions": {
    "in.c-main": "read"
  },
  "componentAccess": [
    "keboola.ex-db-mysql"
  ],
  "expiresIn": 60
}

Response

Created token including its decrypted token value.

idstring required

Unique identifier of the token.

createdstring nullable required

Token creation timestamp, ISO 8601 with a +hhmm offset.

refreshedstring nullable required

Token last refresh timestamp, ISO 8601 with a +hhmm offset.

descriptionstring required

User-provided description of the token.

uristring required

URI of the token detail.

isMasterTokenboolean required

Whether this is a master (admin) token.

canManageBucketsboolean required

Token permission to manage all buckets.

canManageTokensboolean required

Token permission to manage tokens.

canReadAllFileUploadsboolean required

Token permission to read all file uploads.

canPurgeTrashboolean required

Token permission to permanently remove deleted configurations.

canManageProtectedDefaultBranchboolean required

Token permission to manage the protected default branch.

canCreateJobsboolean required

Token permission to create jobs.

canReadAllProjectEventsboolean required

Token permission to read all project events.

canManageDevBranchesboolean required

Token permission to manage development branches.

expiresstring nullable required

Expiration timestamp of the token, ISO 8601 with a +hhmm offset; null when the token never expires.

isExpiredboolean required

Whether the token is expired.

isDisabledboolean required

Whether the token is disabled.

dailyCapacityinteger required

Daily capacity of the token.

tokenstring

Decrypted token value. Present only in the create response; omitted on update.

componentAccessstring[]

Component IDs the token may access. Present only when at least one component is granted.

bucketPermissionsobject required

Bucket permissions keyed by bucket ID (read, write or manage).

Example response

{
  "id": "484",
  "created": "2017-02-13T12:01:05+0100",
  "refreshed": "2017-02-13T12:01:05+0100",
  "description": "my-new-token",
  "uri": "https://connection.keboola.com/v2/storage/tokens/484",
  "dailyCapacity": 5,
  "token": "75-12d4bfa4995694a1c956e7bb1eea0df5cc53acdb",
  "creatorToken": {
    "id": 1,
    "description": "dev@keboola.com"
  },
  "componentAccess": [
    "keboola.ex-db-mysql"
  ],
  "bucketPermissions": {
    "in.c-main": "read"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.