Skip to main content
POST
/
v1
/
gate
/
sessions
Create a Gate signup session
curl --request POST \
  --url https://api.tripwirejs.com/v1/gate/sessions \
  --header 'Content-Type: application/json' \
  --data '
{
  "service_id": "gsvc_0123456789abcdefghjkmnpqrs",
  "account_name": "Acme Growth Workspace",
  "delivery": {
    "version": 1,
    "algorithm": "x25519-hkdf-sha256/aes-256-gcm",
    "key_id": "key_6cw04zdmetw8t5rsdppadhper0",
    "public_key": "pk_live_[example_publishable_key]"
  }
}
'
{
  "data": {
    "object": "gate_session",
    "id": "gate_0123456789abcdefghjkmnpqrs",
    "status": "pending",
    "poll_token": "gtpl_01hzy4k2s6m8n1p3q5r7t9v2wx",
    "consent_url": "https://app.acme.co/signup",
    "expires_at": "2026-03-24T20:00:05.000Z"
  },
  "meta": {
    "request_id": "req_cf147349a4134208aebb8c70e25fb7e1"
  }
}

Body

application/json
service_id
string
required

Canonical Gate service slug used by the public registry and by npx signup . Lowercase letters, numbers, dashes, and underscores only; must start and end with a letter or number.

Required string length: 3 - 32
Pattern: ^[a-z0-9](?:[a-z0-9_-]{1,30}[a-z0-9])$
Example:

"gsvc_0123456789abcdefghjkmnpqrs"

account_name
string
required
Example:

"Acme Growth Workspace"

delivery
object
required
Example:
{
"version": 1,
"algorithm": "x25519-hkdf-sha256/aes-256-gcm",
"key_id": "key_6cw04zdmetw8t5rsdppadhper0",
"public_key": "pk_live_[example_publishable_key]"
}
metadata
object
Example:
{ "source": "signup_form" }

Response

Gate session created.

data
object
required
Example:
{
"object": "gate_session",
"id": "gate_0123456789abcdefghjkmnpqrs",
"status": "pending",
"poll_token": "gtpl_01hzy4k2s6m8n1p3q5r7t9v2wx",
"consent_url": "https://app.acme.co/signup",
"expires_at": "2026-03-24T20:00:05.000Z"
}
meta
object
required
Example:
{
"request_id": "req_cf147349a4134208aebb8c70e25fb7e1"
}