Skip to main content
POST
Create an organization (staff only)
This endpoint is only available to ChainPatrol staff. Customer API keys and customer accounts receive 403 Forbidden.

Overview

Create a new customer organization exactly as ChainPatrol staff do from Staff → Organizations → Create in the app. In one call it:
  • creates the organization with the services you enable
  • adds the owner (reusing an existing user with that email) as OWNER, and the calling staff user as ADMIN
  • creates the default asset groups and any initial brands
  • creates the website as a monitored asset and allowlists it, together with any official assets you list

Authentication

Authenticate with a staff user API key in the X-API-KEY header, or a staff session token as Authorization: Bearer <token>. Organization API keys, customer users, and read-only staff service accounts are refused.

Example Request

Response

skippedAssets lists assets that were not added or allowlisted because they are currently blocked, for example a known scam domain passed as an official asset. Review them before allowlisting anything by hand. brandAssetErrors lists brands whose official assets could not be added. The organization and its brands are still created; add those assets again from the app or the Add Organization Assets endpoint.

Errors

Notes

  • The request is validated with the same rules as the app’s create form, so anything the app refuses is refused here too.
  • Omitted settings take the app form’s defaults: reporting, reviewing and detection on, customer review off, and subscription status PROSPECT. Other services stay off unless you enable them.
  • Enabling an automated service (for example isAutomatedReviewingActive) requires its manual counterpart (isReviewingActive).
  • Official assets already owned by another organization are skipped rather than reassigned.
  • Assets that are currently blocked are never added to the organization or allowlisted, whether they come in as the website, officialAssets or a brand’s officialAssets. They are listed in skippedAssets instead, and the organization is still created.

Authorizations

X-API-KEY
string
header
required

Your API key. This is required by most endpoints to access our API programatically. Reach out to us at support@chainpatrol.io to get an API key for your use.

Body

application/json

Create an organization (staff only)

Creates an organization exactly as ChainPatrol staff do from the app: the owner and the calling staff user are added as members, default asset groups and any initial brands are created, and the website and official assets are allowlisted.

Only ChainPatrol staff can call this endpoint, with a staff session or a staff user API key. Organization API keys and customer accounts receive 403.

organization
object
required

The organization to create

owner
object
required

The customer user who owns the organization

officialAssets
object[]

Official assets of the organization not tied to a brand. Each is created (or claimed when unowned) and allowlisted. Assets owned by another organization are skipped, and currently BLOCKED assets are skipped and reported in skippedAssets

brands
object[]

Initial brands. When provided, at least one is required

Minimum array length: 1

Response

Successful response

Successful operation

organization
object
required
owner
object
required
brands
object[]
required

Brands created with the organization

brandAssetErrors
object[]
required

Brands whose official assets could not be added. The organization and brands were still created; add the assets again from the app or API

skippedAssets
object[]
required

Website and official assets that were not added or allowlisted because they are currently BLOCKED. The organization was still created; review these assets before allowlisting them

dashboardUrl
string
required

Link to the organization's dashboard