curl --request POST \
  --url https://api.turnkey.com/public/v1/submit/create_api_keys \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
  --data '{
    "type": "ACTIVITY_TYPE_CREATE_API_KEYS_V2",
    "timestampMs": "<string> (e.g., 1745474677464)",
    "organizationId": "<string> (Your Organization ID)",
    "parameters": {
        "apiKeys": [
            {
                "apiKeyName": "<string>",
                "publicKey": "<string>",
                "curveType": "<API_KEY_CURVE_P256>",
                "expirationSeconds": "<string>"
            }
        ],
        "userId": "<string>"
    }
}'
{
  "activity": {
    "id": "<activity-id>",
    "status": "ACTIVITY_STATUS_COMPLETED",
    "type": "ACTIVITY_TYPE_CREATE_API_KEYS_V2",
    "organizationId": "<organization-id>",
    "timestampMs": "<timestamp> (e.g., 1745474677464)",
    "result": {
      "activity": {
        "type": "<string>",
        "intent": {
          "createApiKeysIntent": {
            "apiKeys": [
              {
                "apiKeyName": "<string>",
                "publicKey": "<string>",
                "expirationSeconds": "<string>"
              }
            ],
            "userId": "<string>"
          }
        },
        "result": {
          "createApiKeysResult": {
            "apiKeyIds": [
              "<string_element>"
            ]
          }
        }
      }
    }
  }
}
POST
/
public
/
v1
/
submit
/
create_api_keys

Authorizations

X-Stamp
string
header
required

Body

type
enum<string>
required

Enum options: ACTIVITY_TYPE_CREATE_API_KEYS_V2

timestampMs
string
required

Timestamp (in milliseconds) of the request, used to verify liveness of user requests.

organizationId
string
required

Unique identifier for a given Organization.

parameters
object
required

parameters field

Response

A successful response returns the following fields:

activity
object
required

The activity object containing type, intent, and result

curl --request POST \
  --url https://api.turnkey.com/public/v1/submit/create_api_keys \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
  --data '{
    "type": "ACTIVITY_TYPE_CREATE_API_KEYS_V2",
    "timestampMs": "<string> (e.g., 1745474677464)",
    "organizationId": "<string> (Your Organization ID)",
    "parameters": {
        "apiKeys": [
            {
                "apiKeyName": "<string>",
                "publicKey": "<string>",
                "curveType": "<API_KEY_CURVE_P256>",
                "expirationSeconds": "<string>"
            }
        ],
        "userId": "<string>"
    }
}'
{
  "activity": {
    "id": "<activity-id>",
    "status": "ACTIVITY_STATUS_COMPLETED",
    "type": "ACTIVITY_TYPE_CREATE_API_KEYS_V2",
    "organizationId": "<organization-id>",
    "timestampMs": "<timestamp> (e.g., 1745474677464)",
    "result": {
      "activity": {
        "type": "<string>",
        "intent": {
          "createApiKeysIntent": {
            "apiKeys": [
              {
                "apiKeyName": "<string>",
                "publicKey": "<string>",
                "expirationSeconds": "<string>"
              }
            ],
            "userId": "<string>"
          }
        },
        "result": {
          "createApiKeysResult": {
            "apiKeyIds": [
              "<string_element>"
            ]
          }
        }
      }
    }
  }
}