Create a read write session for a user
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.
Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>
Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.
A successful response returns the following fields:
The activity object containing type, intent, and result
Show activity details
The intent of the activity
Show intent details
The createReadWriteSessionIntentV2 object
Show createReadWriteSessionIntentV2 details
Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.
Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>
Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.
The result of the activity
Show result details
The createReadWriteSessionResultV2 object
Show createReadWriteSessionResultV2 details
Unique identifier for a given Organization. If the request is being made by a user and their Sub-Organization ID is unknown, this can be the Parent Organization ID. However, using the Sub-Organization ID is preferred due to performance reasons.
Human-readable name for an Organization.
Unique identifier for a given User.
Human-readable name for a User.
Unique identifier for the created API key.
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}
Create a read write session for a user
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.
Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>
Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.
A successful response returns the following fields:
The activity object containing type, intent, and result
Show activity details
The intent of the activity
Show intent details
The createReadWriteSessionIntentV2 object
Show createReadWriteSessionIntentV2 details
Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.
Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>
Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.
The result of the activity
Show result details
The createReadWriteSessionResultV2 object
Show createReadWriteSessionResultV2 details
Unique identifier for a given Organization. If the request is being made by a user and their Sub-Organization ID is unknown, this can be the Parent Organization ID. However, using the Sub-Organization ID is preferred due to performance reasons.
Human-readable name for an Organization.
Unique identifier for a given User.
Human-readable name for a User.
Unique identifier for the created API key.
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/create_read_write_session \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"createReadWriteSessionIntentV2": {
"targetPublicKey": "<string>",
"userId": "<string>",
"apiKeyName": "<string>",
"expirationSeconds": "<string>",
"invalidateExisting": true
}
},
"result": {
"createReadWriteSessionResultV2": {
"organizationId": "<string>",
"organizationName": "<string>",
"userId": "<string>",
"username": "<string>",
"apiKeyId": "<string>",
"credentialBundle": "<string>"
}
}
}
}
}
}