Create a project
Creates a project. Which kind depends on the credential:
- With a project API token, the new project is always a subproject of the
authenticated root project, and
parent_project_idis ignored. Creating while authenticated as a subproject fails with422 nested_subprojects_not_allowed, since a subproject cannot contain subprojects. - With a Personal access token, omit
parent_project_idto create a root project, or set it to create a subproject of that project. The parent must be a root project the token holder can reach (invalid_parent_project_id,nested_subprojects_not_allowed).
A new root project has no API token yet. Give it one with
Create API token, passing its id as
project_id.
The response includes the signing_key. This is the only time it is returned — it
cannot be retrieved through the API afterward, so capture it from this response.
Use a subproject to isolate settings and resources beneath a root project. Integrations built around Compatibility API Account SIDs can use Create subprojects instead.
Permissions
With a project API token, the token must have the following scope(s) enabled to make a successful request: Management.
With a Personal access token there are no scopes. The token holder must be an owner or admin of the space, and the request reaches only the projects the holder is enabled for, plus their subprojects.
Authentication
SignalWire Basic Authentication using Project ID and API Token.
The client sends HTTP requests with the Authorization header containing the word Basic followed by a space and a base64-encoded string of project_id:token. The project ID will be used as the username and the API token as the password.
Example:
Authorization: Basic base64(project_id:token)
Personal access token authentication for space-wide administration.
Send HTTP Basic auth with an empty username and the Personal access token as
the password. A Personal access token carries your own authority rather than a
project's: it is created from your user menu in the Dashboard, is prefixed
pat_, and has no scopes. The holder must be an owner or admin of the space
named by the subdomain, and the token acts only on that space.
Example:
Authorization: Basic base64(:pat_...)
Request
Personal access token only. The root project to create the new project under. Omit it
to create a root project. Must name a root project the token holder can reach
(invalid_parent_project_id, nested_subprojects_not_allowed). Ignored with a
project API token, which always creates a subproject of its own project.
Response
The unique identifier of the root project. null when this project is itself a root project.
true when this project is a subproject.
The effective region preference for the project. Returned in all responses; it is not currently settable through this API.
The project's signing key. Only returned on create and signing-key rotation responses; it cannot be retrieved through the API afterward.