Skip to main content
POST
/
portal
/
access-request
Submit a sandbox access request
curl --request POST \
  --url https://api-sandbox.ledgersyncappv2.com/v3/portal/access-request \
  --header 'Content-Type: application/json' \
  --header 'X-Portal-Bootstrap-Signature: <x-portal-bootstrap-signature>' \
  --data '
{
  "workos_user_id": "<string>",
  "email": "jsmith@example.com",
  "first_name": "<string>",
  "last_name": "<string>",
  "company_name": "<string>",
  "country": "<string>",
  "turnstile_token": "<string>",
  "use_case": "<string>",
  "client_ip": "<string>"
}
'
{
  "request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "created_at": "2023-11-07T05:31:56Z"
}

Headers

X-Portal-Bootstrap-Signature
string
required

Hex HMAC-SHA256 of the raw request body (or, for the GET status endpoint, of the X-Portal-Workos-User-Id header value) computed with the shared portal bootstrap secret.

Body

application/json
workos_user_id
string
required

The WorkOS user id of the signed-in developer.

email
string<email>
required
Maximum string length: 255
first_name
string
required
Maximum string length: 128
last_name
string
required
Maximum string length: 128
company_name
string
required
Maximum string length: 255
country
string
required

ISO 3166-1 alpha-2 country code, e.g. US.

Required string length: 2
turnstile_token
string
required

Cloudflare Turnstile token from the portal widget.

use_case
string

Free-text "what are you building" summary.

Maximum string length: 2000
client_ip
string

Source IP captured by the portal (used for rate-limiting).

Response

The access-request was recorded as PENDING.

request_id
string<uuid>
required
status
enum<string>
required
Available options:
PENDING,
APPROVED,
DENIED,
NEEDS_INFO
environment
enum<string>
required
Available options:
SANDBOX,
LIVE
created_at
string<date-time>
required