Skip to main content

Organizations

Organizations are the top-level container for all resources in PDaaS. Each organization is completely isolated from others.

The Organization Object

{
"id": "org-abc123xyz",
"name": "Acme Corporation",
"slug": "abc123",
"is_active": true,
"metadata": {},
"created_at": "2025-09-30T10:00:00Z",
"updated_at": "2025-09-30T10:00:00Z"
}

Attributes

AttributeTypeDescription
idstringUnique identifier for the organization
namestringHuman-friendly organization name
slugstring6-character DNS-safe identifier (e.g., abc123)
is_activebooleanWhether the organization is active
metadataobjectOptional metadata (key-value pairs)
created_atstringISO 8601 timestamp of creation
updated_atstringISO 8601 timestamp of last update

Get Organization Info

Retrieves information about the current organization (inferred from service account context).

GET /organizations/info

Example Request

curl https://api.console.solucao42.com.br/organizations/info \
-H "Authorization: HMAC sa_abc123_acc456_xyz:signature" \
-H "x-date: 2025-09-30T12:00:00Z" \
-H "x-nonce: unique-request-id" \
-H "x-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Example Response

{
"id": "org-abc123xyz",
"name": "Acme Corporation",
"slug": "abc123",
"is_active": true,
"metadata": {
"industry": "Technology",
"size": "Enterprise"
},
"created_at": "2025-09-30T10:00:00Z",
"updated_at": "2025-09-30T10:00:00Z"
}

Response Codes

CodeDescription
200Success
401Authentication failed
403Insufficient permissions

Update Organization

Updates the current organization's information.

PATCH /organizations/info

Request Body

{
"name": "Acme Corporation Inc.",
"metadata": {
"industry": "Technology",
"size": "Enterprise",
"region": "North America"
}
}

Example Request

curl -X PATCH https://api.console.solucao42.com.br/organizations/info \
-H "Authorization: HMAC sa_abc123_acc456_xyz:signature" \
-H "Content-Type: application/json" \
-H "x-date: 2025-09-30T12:00:00Z" \
-H "x-nonce: unique-request-id-2" \
-H "x-content-sha256: <body-hash>" \
-d '{
"name": "Acme Corporation Inc."
}'

Example Response

{
"id": "org-abc123xyz",
"name": "Acme Corporation Inc.",
"slug": "abc123",
"is_active": true,
"metadata": {
"industry": "Technology",
"size": "Enterprise",
"region": "North America"
},
"created_at": "2025-09-30T10:00:00Z",
"updated_at": "2025-09-30T12:30:00Z"
}

Response Codes

CodeDescription
200Success
400Invalid request body
401Authentication failed
403Insufficient permissions
422Validation error

Permissions

Required Permissions

ActionPermission
Get organization infoorganizations:GetOrganization
Update organizationorganizations:UpdateOrganization

Notes

  • The organization slug cannot be changed after creation
  • The slug is used in API key prefixes (e.g., sa_abc123_acc456_xyz)
  • Organizations are completely isolated - service accounts cannot access other organizations