POST /v1/organizations
Create a self-service sandbox organization and first application
| Availability | Private Preview |
|---|---|
| Method and path | POST /v1/organizations |
| API version | 1.0.0-private-preview |
| Base URL | https://api.torq.finance |
| Authentication | Anonymous discovery |
| Idempotency | Required header: Idempotency-Key. |
| Rate limits | Read x-ratelimit-* and x-request-id response headers. Do not hard-code a quota. |
Request examples
curl -X POST 'https://api.torq.finance/v1/organizations' \
-H 'Accept: application/json' \
-H 'Idempotency-Key: $TORQ_IDEMPOTENCY_KEY' \
-H 'Content-Type: application/json' \
--data '{"name":"sample_name","origin":"https://example.com/torq","ownerWalletAddress":"0x4ac10f0186719528ae77B1cf6186AE83002C450D"}'This calls the docs preview and returns sample data shaped by the governed OpenAPI response. It never accepts credentials or changes protocol state.
Run the sample call to inspect a schema-shaped response without credentials or side effects.| Request body | OrganizationCreateRequest |
|---|
Parameters
| Name | In | Required | Type |
|---|---|---|---|
Idempotency-Key | header | Yes | string |
x-torq-preview-invite | header | No | string |
Request schema
OrganizationCreateRequest OrganizationCreateRequest
| Property | Type | Required | Description |
|---|---|---|---|
name | string | Yes | — |
applicationName | string | No | — |
origin | string (uri) | Yes | — |
ownerWalletAddress | string | Yes | — |
Inspect nested properties
name string · required
minimum length: 2 · maximum length: 120
applicationName string · optional
minimum length: 2 · maximum length: 120
origin string (uri) · required
ownerWalletAddress string · required
pattern: ^0x[a-fA-F0-9]{40}$
Responses
| Status | Meaning | Schema |
|---|---|---|
201 | Organization created | OrganizationBootstrap |
400 | Invalid request | TorqApiError |
401 | Authentication required | TorqApiError |
403 | Insufficient scope or authority | TorqApiError |
409 | State or idempotency conflict | TorqApiError |
429 | Rate limit exceeded | TorqApiError |
500 | Internal failure | TorqApiError |
201 response schema
OrganizationBootstrap OrganizationBootstrap
| Property | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | — |
applicationId | string | Yes | — |
environment | string | Yes | — |
publishableKey | string | null | No | — |
secretKey | string | null | No | — |
keysShownOnce | boolean | Yes | — |
releaseStatus | string | No | — |
sandbox | object | Yes | — |
Inspect nested properties
organizationId string · required
minimum length: 1 · maximum length: 200
applicationId string · required
minimum length: 1 · maximum length: 200
environment string · required
publishableKey string | null · optional
nullable
secretKey string | null · optional
nullable
keysShownOnce boolean · required
releaseStatus string · optional
sandbox object · required
400, 401, 403, 409, 429, 500 response schema
TorqApiError TorqApiError
| Property | Type | Required | Description |
|---|---|---|---|
ok | boolean | Yes | — |
code | string | Yes | — |
message | string | Yes | — |
requestId | string | Yes | — |
retryable | boolean | Yes | — |
blockedReason | string | null | No | — |
docsUrl | string (uri) | No | — |
Inspect nested properties
ok boolean · required
code string · required
minimum length: 1 · maximum length: 200
message string · required
minimum length: 1 · maximum length: 200
requestId string · required
minimum length: 1 · maximum length: 200
retryable boolean · required
blockedReason string | null · optional
nullable
docsUrl string (uri) · optional
Related guides
- Authentication and scopes
- Errors, idempotency, and rate limits
- Canonical state and final completion
- SDK reference
For retry behavior and blocked-state handling, see Errors and rate limits.