Create Organizations

This documentation outlines the process and rules for creating organizations within the walt.id Enterprise API.

Creation Permissions

Default Behavior

  • By default, only super-admin users are allowed to create an organization via the /v1/admin/organizations endpoint.

Allow Anyone To Create An Organization

  • When the create-organization feature is enabled via the Feature Manager:
    • Every Account (without any permissions) is permitted to create new organizations

Automatic Role Assignment

Admin Role Creation

  • When a new organization is created, the system automatically generates an admin role
  • The admin role follows the naming convention: {organizationID}.admin

Creator Role Assignment

  • The user who creates the organization is automatically assigned the automatically created admin role ({organizationID}.admin)

Create a new Organization (As Super Admin)

CURL

Endpoint: /v1/admin/organizations | API Reference

Example Request

curl -X 'POST' \
  'https://enterprise-sandbox.waltid.dev/v1/admin/organizations' \
  -H 'accept: */*' \
  -H 'Authorization: Bearer {yourToken}' \
  -H 'Content-Type: application/json' \
  -d '{
  "_id": "test",
  "profile": {
    "name": "Test GmbH"
  },
  "billing": {
    "billingCountry": "AT",
    "billingAddress": "test 111/115, 1090 Vienna",
    "vatNr": "test"
  }
}'

Body

{
  "_id": "string",
  "profile": {
    "name": "string"
  },
  "billing": {
    "billingCountry": "",
    "billingAddress": "",
    "vatNr": "",
    "iban": "",
    "swift": ""
  }
}

Body Parameters

  • _id
    • type: String - Unique identifier for the organization, e.g. waltid
  • profile
    • name: String - Human readable name for the organization.
  • billing: Billing information

Response Codes

  • 201 - Organization created successfully.

Create a new Organization (As Regular User)

Please note, this requires the optional featurecreate-organization to be enabled via the Feature Manager.


CURL

Endpoint: /v1/organization/create

Example Request

curl -X 'POST' \
  'https://enterprise-sandbox.waltid.dev/v1/organization/create' \
  -H 'accept: */*' \
  -H 'Authorization: Bearer {yourToken}' \
  -H 'Content-Type: application/json' \
  -d '{
  "_id": "test",
  "profile": {
    "name": "Test GmbH"
  },
  "billing": {
    "billingCountry": "AT",
    "billingAddress": "test 111/115, 1090 Vienna",
    "vatNr": "test"
  }
}'

Body

{
  "_id": "string",
  "profile": {
    "name": "string"
  },
  "billing": {
    "billingCountry": "",
    "billingAddress": "",
    "vatNr": "",
    "iban": "",
    "swift": ""
  }
}

Body Parameters

  • _id
    • type: String - Unique identifier for the organization, e.g. waltid
  • profile
    • name: String - Human readable name for the organization.
  • billing: Billing information

Response Codes

  • 201 - Organization created successfully.
Last updated on April 7, 2025