API Reference
Auto-generated
Organizations
API reference for organizations endpoints.
Auto-generated
This page was generated from the OpenAPI spec. Run
make generate-docs to refresh after spec changes.GET /api/v1/organizations
GET
/api/v1/organizationsList Organizations
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"organizations": []
}POST /api/v1/organizations
POST
/api/v1/organizationsCreate Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | Required | Name |
| description | string | Optional | description |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "example_name"
}'Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/default
GET
/api/v1/organizations/defaultGet Default Organization
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/default \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"default_organization": "example"
}POST /api/v1/organizations/default
POST
/api/v1/organizations/defaultSet Default Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| organization_id | string | Required | Organization Id |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/default \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"organization_id": "example_organization_id"
}'Response Example
JSON
{
"default_organization": "example"
}GET /api/v1/organizations/invitations/{token}
GET
/api/v1/organizations/invitations/{token}Get Invitation By Token
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| token | string | Required | token |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/invitations/<token> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"id": "example",
"organization_name": "example",
"organization_avatar_url": "example",
"role": "example",
"invited_by_name": "example",
"invited_by_email": "example"
}POST /api/v1/organizations/invitations/{token}/accept
POST
/api/v1/organizations/invitations/{token}/acceptAccept Invitation
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| token | string | Required | token |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/invitations/<token>/accept \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"message": "example",
"organization": "example"
}POST /api/v1/organizations/invitations/{token}/decline
POST
/api/v1/organizations/invitations/{token}/declineDecline Invitation
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| token | string | Required | token |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/invitations/<token>/decline \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/{org_id}
GET
/api/v1/organizations/{org_id}Get Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/<org_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"id": "example",
"name": "example",
"slug": "example",
"description": "example",
"avatar_url": "example",
"is_personal": true
}PATCH /api/v1/organizations/{org_id}
PATCH
/api/v1/organizations/{org_id}Update Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
| name | string | Optional | name |
| description | string | Optional | description |
| avatar_url | string | Optional | avatar_url |
| settings | object | Optional | settings |
Request Example
Bash
curl -X PATCH https://api.alterlab.io/api/v1/organizations/<org_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"id": "example",
"name": "example",
"slug": "example",
"description": "example",
"avatar_url": "example",
"is_personal": true
}DELETE /api/v1/organizations/{org_id}
DELETE
/api/v1/organizations/{org_id}Delete Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X DELETE https://api.alterlab.io/api/v1/organizations/<org_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/{org_id}/audit-logs
GET
/api/v1/organizations/{org_id}/audit-logsGet Organization Audit Logs
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| action | string | Optional | Filter by action type |
| actor_id | string | Optional | Filter by actor |
| limit | integer | Optional | Number of entries to returnDefault: 50 |
| offset | integer | Optional | Number of entries to skipDefault: 0 |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/<org_id>/audit-logs \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"logs": [],
"total": 0,
"limit": 0,
"offset": 0
}POST /api/v1/organizations/{org_id}/invitations
POST
/api/v1/organizations/{org_id}/invitationsCreate Invitation
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
string | Required | ||
| role | "owner" | "admin" | "member" | Optional | Organization member roles. |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/<org_id>/invitations \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "example_email"
}'Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/{org_id}/invitations
GET
/api/v1/organizations/{org_id}/invitationsList Invitations
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/<org_id>/invitations \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"invitations": []
}DELETE /api/v1/organizations/{org_id}/invitations/{invitation_id}
DELETE
/api/v1/organizations/{org_id}/invitations/{invitation_id}Cancel Invitation
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| invitation_id | string | Required | invitation_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X DELETE https://api.alterlab.io/api/v1/organizations/<org_id>/invitations/<invitation_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"status": "ok"
}POST /api/v1/organizations/{org_id}/invitations/{invitation_id}/resend
POST
/api/v1/organizations/{org_id}/invitations/{invitation_id}/resendResend Invitation
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| invitation_id | string | Required | invitation_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/<org_id>/invitations/<invitation_id>/resend \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"id": "example",
"organization_id": "example",
"organization_name": "example",
"email": "example",
"role": "example",
"invited_by": "example"
}POST /api/v1/organizations/{org_id}/leave
POST
/api/v1/organizations/{org_id}/leaveLeave Organization
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/<org_id>/leave \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/{org_id}/members
GET
/api/v1/organizations/{org_id}/membersList Members
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| page | integer | Optional | pageDefault: 1 |
| page_size | integer | Optional | page_sizeDefault: 50 |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/<org_id>/members \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"members": [],
"total": 0
}PATCH /api/v1/organizations/{org_id}/members/{member_user_id}
PATCH
/api/v1/organizations/{org_id}/members/{member_user_id}Update Member Role
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| member_user_id | string | Required | member_user_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
| role | "owner" | "admin" | "member" | Required | Organization member roles. |
Request Example
Bash
curl -X PATCH https://api.alterlab.io/api/v1/organizations/<org_id>/members/<member_user_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"role": "..."
}'Response Example
JSON
{
"id": "example",
"organization_id": "example",
"user": "example",
"role": "example",
"joined_at": "example",
"invited_by": "example"
}DELETE /api/v1/organizations/{org_id}/members/{member_user_id}
DELETE
/api/v1/organizations/{org_id}/members/{member_user_id}Remove Member
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| member_user_id | string | Required | member_user_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
Request Example
Bash
curl -X DELETE https://api.alterlab.io/api/v1/organizations/<org_id>/members/<member_user_id> \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"status": "ok"
}GET /api/v1/organizations/{org_id}/stats
GET
/api/v1/organizations/{org_id}/statsGet Organization Stats
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
Request Example
Bash
curl -X GET https://api.alterlab.io/api/v1/organizations/<org_id>/stats \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Response Example
JSON
{
"total_members": 0,
"total_api_keys": 0,
"total_webhooks": 0,
"credits_used_this_period": 0,
"credits_allocated": 0,
"subscription_tier": "example"
}POST /api/v1/organizations/{org_id}/transfer-ownership
POST
/api/v1/organizations/{org_id}/transfer-ownershipTransfer Ownership
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id | string | Required | org_id |
| X-Organization-Id | string | Optional | X-Organization-Id |
| new_owner_id | string | Required | New Owner Id |
Request Example
Bash
curl -X POST https://api.alterlab.io/api/v1/organizations/<org_id>/transfer-ownership \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"new_owner_id": "example_new_owner_id"
}'Response Example
JSON
{
"message": "example",
"new_owner": "example",
"former_owner_new_role": "example"
}