Platform.sh is a container-based Platform-as-a-Service. Our main API
is simply Git. With a single git push
and a couple of YAML files in
your repository you can deploy an arbitrarily complex cluster.
Every Project can have multiple applications (PHP,
Node.js, Python, Ruby, Go, etc.) and managed, automatically
provisioned services (databases, message queues, etc.).
Each project also comes with multiple concurrent live staging/development Environments. These ephemeral development environments are automatically created every time you push a new branch or create a pull request, and each has a full copy of the data of its parent branch, which is created on-the-fly in seconds.
Our Git implementation supports integrations with third party Git providers such as GitHub, Bitbucket, or GitLab, allowing you to simply integrate Platform.sh into your existing workflow.
In addition to the Git API, we also offer a REST API that allows you to manage every aspect of the platform, from managing projects and environments, to accessing accounts and subscriptions, to creating robust workflows and integrations with your CI systems and internal services.
These API docs are generated from a standard OpenAPI (Swagger) Specification document which you can find here in YAML and in JSON formats.
This RESTful API consumes and produces HAL-style JSON over HTTPS, and any REST library can be used to access it. On GitHub, we also host a few API libraries that you can use to make API access easier, such as our PHP API client and our JavaScript API client.
In order to use the API you will first need to have a Platform.sh account (we have a free trial available) and create an API Token.
API authentication is done with OAuth2 access tokens.
You can use an API token as one way to get an OAuth2 access token. This is particularly useful in scripts, e.g. for CI pipelines.
To create an API token, go to the "API Tokens" section of the "Account Settings" tab on the Console.
To exchange this API token for an access token, a POST
request
must be made to https://auth.api.platform.sh/oauth2/token
.
The request will look like this in cURL:
curl -u platform-api-user: \ -d 'grant_type=api_token&api_token=API_TOKEN' \ https://auth.api.platform.sh/oauth2/token
This will return a "Bearer" access token that can be used to authenticate further API requests, for example:
{ "access_token": "abcdefghij1234567890", "expires_in": 900, "token_type": "bearer" }
To authenticate further API requests, include this returned bearer token
in the Authorization
header. For example, to retrieve a list of
Projects
accessible by the current user, you can make the following request
(substituting the dummy token for your own):
curl -H "Authorization: Bearer abcdefghij1234567890" \ https://api.platform.sh/projects
Most endpoints in the API return fields which defines a HAL (Hypertext Application Language) schema for the requested endpoint. The particular objects returns and their contents can vary by endpoint. The payload examples we give here for the requests do not show these elements. These links can allow you to create a fully dynamic API client that does not need to hardcode any method or schema.
Unless they are used for pagination we do not show the HAL links in the payload examples in this documentation for brevity and as their content is contextual (based on the permissions of the user).
Most endpoints that respond to GET
requests will include a _links
object
in their response. The _links
object contains a key-object pair labelled self
, which defines
two further key-value pairs:
href
- A URL string referring to the fully qualified name of the returned object. For many endpoints, this will be the direct link to the API endpoint on the region gateway, rather than on the general API gateway. This means it may reference a host of, for example, eu-2.platform.sh
rather than api.platform.sh
.meta
- An object defining the OpenAPI Specification (OAS) schema object of the component returned by the endpoint.There may be zero or more other fields in the _links
object resembling fragment identifiers
beginning with a hash mark, e.g. #edit
or #delete
. Each of these keys
refers to a JSON object containing two key-value pairs:
href
- A URL string referring to the path name of endpoint which can perform the action named in the key.meta
- An object defining the OAS schema of the endpoint. This consists of a key-value pair, with the key defining an HTTP method and the value defining the operation object of the endpoint.To use one of these HAL links, you must send a new request to the URL defined
in the href
field which contains a body defined the schema object in the meta
field.
For example, if you make a request such as GET /projects/abcdefghij1234567890
, the _links
object in the returned response will include the key #delete
. That object
will look something like this fragment:
"#delete": {
"href": "/api/projects/abcdefghij1234567890",
"meta": {
"delete": {
"responses": {
. . . // Response definition omitted for space
},
"parameters": []
}
}
}
To use this information to delete a project, you would then send a DELETE
request to the endpoint https://api.platform.sh/api/projects/abcdefghij1234567890
with no body or parameters to delete the project that was originally requested.
Requests to endpoints which create or modify objects, such as POST
, PATCH
, or DELETE
requests, will include an _embedded
key in their response. The object
represented by this key will contain the created or modified object. This
object is identical to what would be returned by a subsequent GET
request
for the object referred to by the endpoint.
On Platform.sh, a Project is backed by a single Git repository and encompasses your entire application stack, the services used by your application, the application's data storage, the production and staging environments, and the backups of those environments.
When you create a new project, you start with a single Environment called Master, corresponding to the master branch in the Git repository of the project—this will be your production environment.
If you connect your project to an external Git repo using one of our Third-Party Integrations a new development environment can be created for each branch or pull request created in the repository. When a new development environment is created, the production environment's data will be cloned on-the-fly, giving you an isolated, production-ready test environment.
This set of API endpoints can be used to retrieve a list of projects associated with an API key, as well as create and update the parameters of existing projects.
Note:
To list projects or to create a new project, use
/subscriptions
.
Retrieve the details of a single project.
projectId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "title": "string",
- "description": "string",
- "owner": "string",
- "namespace": "string",
- "organization": "string",
- "default_branch": "string",
- "status": {
- "code": "string",
- "message": "string"
}, - "timezone": "string",
- "region": "string",
- "repository": {
- "url": "string",
- "client_ssh_key": "string"
}, - "default_domain": "string",
- "subscription": {
- "license_uri": "string",
- "plan": "2xlarge",
- "environments": 0,
- "storage": 0,
- "included_users": 0,
- "subscription_management_uri": "string",
- "restricted": true,
- "suspended": true,
- "user_licenses": 0,
- "resources": {
- "container_profiles": true,
- "production": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}, - "development": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}
}, - "resource_validation_url": "string",
- "image_types": {
- "only": [
- "string"
], - "exclude": [
- "string"
]
}
}
}
Update the details of an existing project.
projectId required | string |
object (Arbitrary attributes attached to this resource) | |
title | string (Title) |
description | string (Description) |
default_branch | string or null (Default branch) |
timezone | string (Timezone of the project) |
region | string (Region) |
default_domain | string or null (Default domain) |
{- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "title": "string",
- "description": "string",
- "default_branch": "string",
- "timezone": "string",
- "region": "string",
- "default_domain": "string"
}
{- "status": "string",
- "code": 0
}
Get a list of capabilities on a project, as defined by the billing system. For instance, one special capability that could be defined on a project is large development environments.
projectId required | string |
{- "custom_domains": {
- "enabled": true,
- "environments_with_domains_limit": 0
}, - "source_operations": {
- "enabled": true
}, - "runtime_operations": {
- "enabled": true
}, - "outbound_firewall": {
- "enabled": true
}, - "metrics": {
- "max_range": "string"
}, - "logs_forwarding": {
- "max_extra_payload_size": 0
}, - "images": {
- "property1": {
- "property1": {
- "available": true
}, - "property2": {
- "available": true
}
}, - "property2": {
- "property1": {
- "available": true
}, - "property2": {
- "available": true
}
}
}, - "instance_limit": 0,
- "build_resources": {
- "enabled": true,
- "max_cpu": 0,
- "max_memory": 0
}, - "data_retention": {
- "enabled": true
}, - "integrations": {
- "enabled": true,
- "config": {
- "newrelic": {
- "enabled": true,
- "role": "string"
}, - "sumologic": {
- "enabled": true,
- "role": "string"
}, - "splunk": {
- "enabled": true,
- "role": "string"
}, - "httplog": {
- "enabled": true,
- "role": "string"
}, - "syslog": {
- "enabled": true,
- "role": "string"
}, - "webhook": {
- "enabled": true,
- "role": "string"
}, - "script": {
- "enabled": true,
- "role": "string"
}, - "github": {
- "enabled": true,
- "role": "string"
}, - "gitlab": {
- "enabled": true,
- "role": "string"
}, - "bitbucket": {
- "enabled": true,
- "role": "string"
}, - "bitbucket_server": {
- "enabled": true,
- "role": "string"
}, - "health.email": {
- "enabled": true,
- "role": "string"
}, - "health.webhook": {
- "enabled": true,
- "role": "string"
}, - "health.pagerduty": {
- "enabled": true,
- "role": "string"
}, - "health.slack": {
- "enabled": true,
- "role": "string"
}, - "cdn.fastly": {
- "enabled": true,
- "role": "string"
}, - "blackfire": {
- "enabled": true,
- "role": "string"
}
}, - "allowed_integrations": [
- "string"
]
}
}
On rare occasions, a project's build cache can become corrupted. This endpoint will entirely flush the project's build cache. More information on clearing the build cache can be found in our user documentation.
projectId required | string |
{- "status": "string",
- "code": 0
}
These endpoints can be used to add, modify, or remove domains from a project. For more information on how domains function on Platform.sh, see the Domains section of our documentation.
Retrieve a list of objects representing the user-specified domains associated with a project. Note that this does not return the domains automatically assigned to a project that appear under "Access site" on the user interface.
projectId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "project": "string",
- "name": "string",
- "registered_name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
]
Add a single domain to a project.
If the ssl
field is left blank without an object containing
a PEM-encoded SSL certificate, a certificate will
be provisioned for you via Let's Encrypt.
projectId required | string |
name required | string (Domain name) |
object (Arbitrary attributes attached to this resource) | |
is_default | boolean (Is this domain default) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
{- "status": "string",
- "code": 0
}
Retrieve information about a single user-specified domain associated with a project.
projectId required | string |
domainId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "project": "string",
- "name": "string",
- "registered_name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
Update the information associated with a single user-specified domain associated with a project.
projectId required | string |
domainId required | string |
object (Arbitrary attributes attached to this resource) | |
is_default | boolean (Is this domain default) |
{- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
{- "status": "string",
- "code": 0
}
Retrieve a list of objects representing the user-specified domains
associated with an environment. Note that this does not return the
.platformsh.site
subdomains, which are automatically assigned to
the environment.
projectId required | string |
environmentId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "project": "string",
- "name": "string",
- "registered_name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
]
Add a single domain to an environment.
If the environment is not production, the replacement_for
field
is required, which binds a new domain to an existing one from a
production environment.
If the ssl
field is left blank without an object containing
a PEM-encoded SSL certificate, a certificate will
be provisioned for you via Let's Encrypt.
projectId required | string |
environmentId required | string |
name required | string (Domain name) |
object (Arbitrary attributes attached to this resource) | |
is_default | boolean (Is this domain default) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
{- "status": "string",
- "code": 0
}
Retrieve information about a single user-specified domain associated with an environment.
projectId required | string |
environmentId required | string |
domainId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "project": "string",
- "name": "string",
- "registered_name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
Update the information associated with a single user-specified domain associated with an environment.
projectId required | string |
environmentId required | string |
domainId required | string |
object (Arbitrary attributes attached to this resource) | |
is_default | boolean (Is this domain default) |
{- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "is_default": true
}
{- "status": "string",
- "code": 0
}
Delete a single user-specified domain associated with an environment.
projectId required | string |
environmentId required | string |
domainId required | string |
{- "status": "string",
- "code": 0
}
User-supplied SSL/TLS certificates can be managed using these endpoints. For more information, see our Third-party TLS certificate documentation. These endpoints are not for managing certificates that are automatically supplied by Platform.sh via Let's Encrypt.
Retrieve a list of objects representing the SSL certificates associated with a project.
projectId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "certificate": "string",
- "chain": [
- "string"
], - "is_provisioned": true,
- "is_invalid": true,
- "is_root": true,
- "domains": [
- "string"
], - "auth_type": [
- "string"
], - "issuer": [
- {
- "oid": "string",
- "alias": "string",
- "value": "string"
}
], - "expires_at": "2019-08-24T14:15:22Z"
}
]
Add a single SSL certificate to a project.
projectId required | string |
certificate required | string (The PEM-encoded certificate) |
key required | string (The PEM-encoded private key) |
chain | Array of strings (Certificate chain) |
is_invalid | boolean (Whether this certificate should be skipped during provisioning) |
{- "certificate": "string",
- "key": "string",
- "chain": [
- "string"
], - "is_invalid": true
}
{- "status": "string",
- "code": 0
}
Retrieve information about a single SSL certificate associated with a project.
projectId required | string |
certificateId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "certificate": "string",
- "chain": [
- "string"
], - "is_provisioned": true,
- "is_invalid": true,
- "is_root": true,
- "domains": [
- "string"
], - "auth_type": [
- "string"
], - "issuer": [
- {
- "oid": "string",
- "alias": "string",
- "value": "string"
}
], - "expires_at": "2019-08-24T14:15:22Z"
}
Update a single SSL certificate associated with a project.
projectId required | string |
certificateId required | string |
chain | Array of strings (Certificate chain) |
is_invalid | boolean (Whether this certificate should be skipped during provisioning) |
{- "chain": [
- "string"
], - "is_invalid": true
}
{- "status": "string",
- "code": 0
}
These endpoints manipulate user-defined variables which are bound to an entire project. These variables are accessible to all environments within a single project, and they can be made available at both build time and runtime. For more information on project variables, see the Variables section of the documentation.
Retrieve a list of objects representing the user-defined variables within a project.
projectId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true
}
]
Add a variable to a project. The value
can be either a string or a JSON
object (default: string), as specified by the is_json
boolean flag.
See the Variables
section in our documentation for more information.
projectId required | string |
name required | string (Name) |
value required | string (Value) |
object (Arbitrary attributes attached to this resource) | |
is_json | boolean (The variable is a JSON string) |
is_sensitive | boolean (The variable is sensitive) |
visible_build | boolean (The variable is visible during build) |
visible_runtime | boolean (The variable is visible at runtime) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true
}
{- "status": "string",
- "code": 0
}
Retrieve a single user-defined project variable.
projectId required | string |
projectVariableId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true
}
Update a single user-defined project variable.
The value
can be either a string or a JSON
object (default: string), as specified by the is_json
boolean flag.
See the Variables
section in our documentation for more information.
projectId required | string |
projectVariableId required | string |
name | string (Name) |
object (Arbitrary attributes attached to this resource) | |
value | string (Value) |
is_json | boolean (The variable is a JSON string) |
is_sensitive | boolean (The variable is sensitive) |
visible_build | boolean (The variable is visible during build) |
visible_runtime | boolean (The variable is visible at runtime) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true
}
{- "status": "string",
- "code": 0
}
The Git repository backing projects hosted on Platform.sh can be
accessed in a read-only manner through the /projects/{projectId}/git/*
family of endpoints. With these endpoints, you can retrieve objects from
the Git repository in the same way that you would in a local environment.
Retrieve, by hash, an object representing a blob in the repository
backing a project. This endpoint allows direct read-only access
to the contents of files in a repo. It returns the file in the
content
field of the response object, encoded according to the
format in the encoding
field, e.g. base64
.
projectId required | string |
repositoryBlobId required | string |
{- "sha": "string",
- "size": 0,
- "encoding": "base64",
- "content": "string"
}
Retrieve, by hash, an object representing a commit in the repository backing
a project. This endpoint functions similarly to git cat-file -p <commit-id>
.
The returned object contains the hash of the Git tree that it
belongs to, as well as the ID of parent commits.
The commit represented by a parent ID can be retrieved using this endpoint, while the tree state represented by this commit can be retrieved using the Get a tree object endpoint.
projectId required | string |
repositoryCommitId required | string |
{- "sha": "string",
- "author": {
- "date": "2019-08-24T14:15:22Z",
- "name": "string",
- "email": "string"
}, - "committer": {
- "date": "2019-08-24T14:15:22Z",
- "name": "string",
- "email": "string"
}, - "message": "string",
- "tree": "string",
- "parents": [
- "string"
]
}
Retrieve a list of refs/*
in the repository backing a project.
This endpoint functions similarly to git show-ref
, with each
returned object containing a ref
field with the ref's name,
and an object containing the associated commit ID.
The returned commit ID can be used with the Get a commit object endpoint to retrieve information about that specific commit.
projectId required | string |
[- {
- "ref": "string",
- "object": {
- "type": "string",
- "sha": "string"
}, - "sha": "string"
}
]
Retrieve the details of a single refs
object in the repository
backing a project. This endpoint functions similarly to
git show-ref <pattern>
, although the pattern must be a full ref id
,
rather than a matching pattern.
NOTE: The {repositoryRefId}
must be properly escaped.
That is, the ref refs/heads/master
is accessible via
/projects/{projectId}/git/refs/heads%2Fmaster
.
projectId required | string |
repositoryRefId required | string |
{- "ref": "string",
- "object": {
- "type": "string",
- "sha": "string"
}, - "sha": "string"
}
Retrieve, by hash, the tree state represented by a commit.
The returned object's tree
field contains a list of files and
directories present in the tree.
Directories in the tree can be recursively retrieved by this endpoint through their hashes. Files in the tree can be retrieved by the Get a blob object endpoint.
projectId required | string |
repositoryTreeId required | string |
{- "sha": "string",
- "tree": [
- {
- "path": "string",
- "mode": "040000",
- "type": "string",
- "sha": "string"
}
]
}
Platform.sh can easily integrate with many third-party services, including Git hosting services (GitHub, GitLab, and Bitbucket), health notification services (email, Slack, PagerDuty), performance analytics platforms (New Relic, Blackfire, Tideways), and webhooks.
For clarification about what information each field requires, see the External Integrations documentation. NOTE: The names of the CLI arguments listed in the documentation are not always named exactly the same as the required body fields in the API request.
projectId required | string |
[- {
- "type": "string",
- "fetch_branches": true,
- "prune_branches": true,
- "environment_init_resources": "default",
- "app_credentials": {
- "key": "string"
}, - "addon_credentials": {
- "addon_key": "string",
- "client_key": "string"
}, - "repository": "string",
- "build_pull_requests": true,
- "pull_requests_clone_parent_data": true,
- "resync_pull_requests": true
}
]
projectId required | string |
type required | string (Integration type) |
repository required | string (The Bitbucket repository (in the form `user/repo`).) |
fetch_branches | boolean (Whether or not to fetch branches.) |
prune_branches | boolean (Whether or not to remove branches that disappeared remotely (requires `fetch_branches`).) |
environment_init_resources | string (The resources used when initializing a new service) Enum: "default" "manual" "minimum" "parent" |
object or null (The OAuth2 consumer information (optional).) | |
object or null (The addon credential information (optional).) | |
build_pull_requests | boolean (Whether or not to build pull requests.) |
pull_requests_clone_parent_data | boolean (Whether or not to clone parent data when building merge requests.) |
resync_pull_requests | boolean (Whether or not pull request environment data should be re-synced on every build.) |
{- "type": "string",
- "fetch_branches": true,
- "prune_branches": true,
- "environment_init_resources": "default",
- "app_credentials": {
- "key": "string",
- "secret": "string"
}, - "addon_credentials": {
- "addon_key": "string",
- "client_key": "string",
- "shared_secret": "string"
}, - "repository": "string",
- "build_pull_requests": true,
- "pull_requests_clone_parent_data": true,
- "resync_pull_requests": true
}
{- "status": "string",
- "code": 0
}
projectId required | string |
integrationId required | string |
{- "type": "string",
- "fetch_branches": true,
- "prune_branches": true,
- "environment_init_resources": "default",
- "app_credentials": {
- "key": "string"
}, - "addon_credentials": {
- "addon_key": "string",
- "client_key": "string"
}, - "repository": "string",
- "build_pull_requests": true,
- "pull_requests_clone_parent_data": true,
- "resync_pull_requests": true
}
projectId required | string |
integrationId required | string |
type required | string (Integration type) |
repository required | string (The Bitbucket repository (in the form `user/repo`).) |
fetch_branches | boolean (Whether or not to fetch branches.) |
prune_branches | boolean (Whether or not to remove branches that disappeared remotely (requires `fetch_branches`).) |
environment_init_resources | string (The resources used when initializing a new service) Enum: "default" "manual" "minimum" "parent" |
object or null (The OAuth2 consumer information (optional).) | |
object or null (The addon credential information (optional).) | |
build_pull_requests | boolean (Whether or not to build pull requests.) |
pull_requests_clone_parent_data | boolean (Whether or not to clone parent data when building merge requests.) |
resync_pull_requests | boolean (Whether or not pull request environment data should be re-synced on every build.) |
{- "type": "string",
- "fetch_branches": true,
- "prune_branches": true,
- "environment_init_resources": "default",
- "app_credentials": {
- "key": "string",
- "secret": "string"
}, - "addon_credentials": {
- "addon_key": "string",
- "client_key": "string",
- "shared_secret": "string"
}, - "repository": "string",
- "build_pull_requests": true,
- "pull_requests_clone_parent_data": true,
- "resync_pull_requests": true
}
{- "status": "string",
- "code": 0
}
These endpoints can be used to retrieve information about support ticket priority and allow you to submit new ticket to the Platform.sh Support Team.
subject required | string A title of the ticket. |
description required | string The description body of the support ticket. |
requester_id | string <uuid> UUID of the ticket requester. Converted from the ZID value. |
priority | string Enum: "low" "normal" "high" "urgent" A priority of the ticket. |
subscription_id | string see create() |
affected_url | string <url> see create(). |
followup_tid | string The unique ID of the ticket which this ticket is a follow-up to. |
category | string Enum: "access" "billing_question" "complaint" "compliance_question" "configuration_change" "general_question" "incident_outage" "bug_report" "report_a_gui_bug" "onboarding" "close_my_account" The category of the support ticket. |
Array of objects A list of attachments for the ticket. | |
collaborator_ids | Array of strings A list of collaborators uuids for the ticket. |
{- "subject": "string",
- "description": "string",
- "requester_id": "5fe88a55-c92f-4e12-bd25-87bf15036ce9",
- "priority": "low",
- "subscription_id": "string",
- "affected_url": "string",
- "followup_tid": "string",
- "category": "access",
- "attachments": [
- {
- "filename": "string",
- "data": "string"
}
], - "collaborator_ids": [
- "string"
]
}
{- "ticket_id": 0,
- "created": "2019-08-24T14:15:22Z",
- "updated": "2019-08-24T14:15:22Z",
- "type": "problem",
- "subject": "string",
- "description": "string",
- "priority": "low",
- "followup_tid": "string",
- "status": "closed",
- "recipient": "string",
- "requester_id": "5fe88a55-c92f-4e12-bd25-87bf15036ce9",
- "submitter_id": "7e359385-67b1-4c24-8530-73be9a04faec",
- "assignee_id": "e209ca2d-190b-4818-b659-67d4ef4f1ce8",
- "organization_id": "string",
- "collaborator_ids": [
- "string"
], - "has_incidents": true,
- "due": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "subscription_id": "string",
- "ticket_group": "string",
- "support_plan": "string",
- "affected_url": "string",
- "queue": "string",
- "issue_type": "string",
- "resolution_time": "2019-08-24T14:15:22Z",
- "response_time": "2019-08-24T14:15:22Z",
- "project_url": "string",
- "region": "string",
- "category": "access",
- "environment": "env_development",
- "ticket_sharing_status": "ts_sent_to_platform",
- "application_ticket_url": "string",
- "infrastructure_ticket_url": "string",
- "jira": [
- {
- "id": 0,
- "ticket_id": 0,
- "issue_id": 0,
- "issue_key": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}
ticket_id required | string The ID of the ticket |
status | string Enum: "open" "solved" The status of the support ticket. |
collaborator_ids | Array of strings A list of collaborators uuids for the ticket. |
collaborators_replace | boolean Default: null Whether or not should replace ticket collaborators with the provided values. If false, the collaborators will be appended. |
{- "status": "open",
- "collaborator_ids": [
- "string"
], - "collaborators_replace": null
}
{- "ticket_id": 0,
- "created": "2019-08-24T14:15:22Z",
- "updated": "2019-08-24T14:15:22Z",
- "type": "problem",
- "subject": "string",
- "description": "string",
- "priority": "low",
- "followup_tid": "string",
- "status": "closed",
- "recipient": "string",
- "requester_id": "5fe88a55-c92f-4e12-bd25-87bf15036ce9",
- "submitter_id": "7e359385-67b1-4c24-8530-73be9a04faec",
- "assignee_id": "e209ca2d-190b-4818-b659-67d4ef4f1ce8",
- "organization_id": "string",
- "collaborator_ids": [
- "string"
], - "has_incidents": true,
- "due": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "subscription_id": "string",
- "ticket_group": "string",
- "support_plan": "string",
- "affected_url": "string",
- "queue": "string",
- "issue_type": "string",
- "resolution_time": "2019-08-24T14:15:22Z",
- "response_time": "2019-08-24T14:15:22Z",
- "project_url": "string",
- "region": "string",
- "category": "access",
- "environment": "env_development",
- "ticket_sharing_status": "ts_sent_to_platform",
- "application_ticket_url": "string",
- "infrastructure_ticket_url": "string",
- "jira": [
- {
- "id": 0,
- "ticket_id": 0,
- "issue_id": 0,
- "issue_key": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}
subscription_id | string The ID of the subscription the ticket should be related to |
category | string The category of the support ticket. |
[- {
- "id": "string",
- "label": "string",
- "short_description": "string",
- "description": "string"
}
]
On Platform.sh, an environment encompasses a single instance of your entire application stack, the services used by the application, the application's data storage, and the environment's backups.
In general, an environment represents a single branch or merge request in the Git repository backing a project. It is a virtual cluster of read-only application and service containers with read-write mounts for application and service data.
On Platform.sh, the master
branch is your production environment—thus,
merging changes to master will put those changes to production.
Retrieve a list of a project's existing environments and the information associated with each environment.
projectId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "machine_name": "string",
- "title": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "development",
- "parent": "string",
- "default_domain": "string",
- "has_domains": true,
- "clone_parent_on_create": true,
- "deployment_target": "string",
- "is_pr": true,
- "has_remote": true,
- "status": "active",
- "http_access": {
- "is_enabled": true,
- "addresses": [
- {
- "permission": "allow",
- "address": "string"
}
], - "basic_auth": {
- "property1": "string",
- "property2": "string"
}
}, - "enable_smtp": true,
- "restrict_robots": true,
- "edge_hostname": "string",
- "deployment_state": {
- "last_deployment_successful": true,
- "last_deployment_at": "2019-08-24T14:15:22Z",
- "crons": {
- "enabled": true,
- "status": "paused"
}
}, - "resources_overrides": {
- "property1": {
- "services": {
- "property1": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}
}, - "starts_at": "2019-08-24T14:15:22Z",
- "ends_at": "2019-08-24T14:15:22Z",
- "redeployed_start": true,
- "redeployed_end": true
}, - "property2": {
- "services": {
- "property1": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}
}, - "starts_at": "2019-08-24T14:15:22Z",
- "ends_at": "2019-08-24T14:15:22Z",
- "redeployed_start": true,
- "redeployed_end": true
}
}, - "last_active_at": "2019-08-24T14:15:22Z",
- "last_backup_at": "2019-08-24T14:15:22Z",
- "project": "string",
- "is_main": true,
- "is_dirty": true,
- "has_code": true,
- "head_commit": "string",
- "merge_info": {
- "commits_ahead": 0,
- "commits_behind": 0,
- "parent_ref": "string"
}, - "has_deployment": true
}
]
Retrieve the details of a single existing environment.
projectId required | string |
environmentId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "machine_name": "string",
- "title": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "development",
- "parent": "string",
- "default_domain": "string",
- "has_domains": true,
- "clone_parent_on_create": true,
- "deployment_target": "string",
- "is_pr": true,
- "has_remote": true,
- "status": "active",
- "http_access": {
- "is_enabled": true,
- "addresses": [
- {
- "permission": "allow",
- "address": "string"
}
], - "basic_auth": {
- "property1": "string",
- "property2": "string"
}
}, - "enable_smtp": true,
- "restrict_robots": true,
- "edge_hostname": "string",
- "deployment_state": {
- "last_deployment_successful": true,
- "last_deployment_at": "2019-08-24T14:15:22Z",
- "crons": {
- "enabled": true,
- "status": "paused"
}
}, - "resources_overrides": {
- "property1": {
- "services": {
- "property1": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}
}, - "starts_at": "2019-08-24T14:15:22Z",
- "ends_at": "2019-08-24T14:15:22Z",
- "redeployed_start": true,
- "redeployed_end": true
}, - "property2": {
- "services": {
- "property1": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0,
- "disk": 0
}
}, - "starts_at": "2019-08-24T14:15:22Z",
- "ends_at": "2019-08-24T14:15:22Z",
- "redeployed_start": true,
- "redeployed_end": true
}
}, - "last_active_at": "2019-08-24T14:15:22Z",
- "last_backup_at": "2019-08-24T14:15:22Z",
- "project": "string",
- "is_main": true,
- "is_dirty": true,
- "has_code": true,
- "head_commit": "string",
- "merge_info": {
- "commits_ahead": 0,
- "commits_behind": 0,
- "parent_ref": "string"
}, - "has_deployment": true
}
Update the details of a single existing environment.
projectId required | string |
environmentId required | string |
name | string (Name) |
title | string (Title) |
object (Arbitrary attributes attached to this resource) | |
type | string (The type of environment (`production`, `staging` or `development`). If not provided, a default will be calculated.) Enum: "development" "production" "staging" |
parent | string or null (Parent environment) |
clone_parent_on_create | boolean (Clone data when creating that environment) |
object (Http access permissions) | |
enable_smtp | boolean (Whether to configure SMTP for this environment.) |
restrict_robots | boolean (Whether to restrict robots for this environment.) |
{- "name": "string",
- "title": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "development",
- "parent": "string",
- "clone_parent_on_create": true,
- "http_access": {
- "is_enabled": true,
- "addresses": [
- {
- "permission": "allow",
- "address": "string"
}
], - "basic_auth": {
- "property1": "string",
- "property2": "string"
}
}, - "enable_smtp": true,
- "restrict_robots": true
}
{- "status": "string",
- "code": 0
}
Set the specified environment's status to active
projectId required | string |
environmentId required | string |
required | object or null (Resources) |
{- "resources": {
- "init": "default"
}
}
{- "status": "string",
- "code": 0
}
Create a new environment as a branch of the current environment.
projectId required | string |
environmentId required | string |
title required | string (Title) |
name required | string (Name) |
clone_parent required | boolean (Clone data from the parent environment) |
type required | string (The type of environment (`staging` or `development`)) Enum: "development" "staging" |
required | object or null (Resources) |
{- "title": "string",
- "name": "string",
- "clone_parent": true,
- "type": "development",
- "resources": {
- "init": "default"
}
}
{- "status": "string",
- "code": 0
}
Destroy all services and data running on this environment so that only the Git branch remains. The environment can be reactivated later at any time; reactivating an environment will sync data from the parent environment and redeploy.
NOTE: ALL DATA IN THIS ENVIRONMENT WILL BE IRREVOCABLY LOST
projectId required | string |
environmentId required | string |
{- "status": "string",
- "code": 0
}
Initialize and configure a new environment with an existing repository. The payload is the url of a git repository with a profile name:
{
"repository": "git@github.com:platformsh/a-project-template.git@master",
"profile": "Example Project",
"files": [
{
"mode": 0600,
"path": "config.json",
"contents": "XXXXXXXX"
}
]
}
It can optionally carry additional files that will be committed to the repository, the POSIX file mode to set on each file, and the base64-encoded contents of each file.
This endpoint can also add a second repository
URL in the config
parameter that will be added to the contents of the first.
This allows you to put your application in one repository and the Platform.sh
YAML configuration files in another.
projectId required | string |
environmentId required | string |
profile required | string (Name of the profile to show in the UI) |
repository required | string (Repository to clone from) |
config required | string or null (Repository to clone the configuration files from) |
required | Array of objects (A list of files to add to the repository during initialization) |
{- "profile": "string",
- "repository": "string",
- "config": "string",
- "files": [
- {
- "path": "string",
- "mode": 0,
- "contents": "string"
}
]
}
{- "status": "string",
- "code": 0
}
Merge an environment into its parent. This means that code changes from the branch environment will be merged into the parent branch, and the parent branch will be rebuilt and deployed with the new code changes, retaining the existing data in the parent environment.
projectId required | string |
environmentId required | string |
required | object or null (Resources) |
{- "resources": {
- "init": "child"
}
}
{- "status": "string",
- "code": 0
}
Pause an environment, stopping all services and applications (except the router).
Development environments are often used for a limited time and then abandoned. To prevent unnecessary consumption of resources, development environments that haven't been redeployed in 14 days are automatically paused.
You can pause an environment manually at any time using this endpoint. Further information is available in our public documentation.
projectId required | string |
environmentId required | string |
{- "status": "string",
- "code": 0
}
Resume a paused environment, restarting all services and applications.
Development environments that haven't been used for 14 days will be paused automatically. They can be resumed via a redeployment or manually using this endpoint or the CLI as described in the public documentation.
projectId required | string |
environmentId required | string |
{- "status": "string",
- "code": 0
}
This synchronizes the code and/or data of an environment with that of its parent, then redeploys the environment. Synchronization is only possible if a branch has no unmerged commits and it can be fast-forwarded.
If data synchronization is specified, the data in the environment will be overwritten with that of its parent.
projectId required | string |
environmentId required | string |
synchronize_code required | boolean (Synchronize code?) |
rebase required | boolean (Synchronize code by rebasing instead of merging) |
synchronize_data required | boolean (Synchronize data?) |
synchronize_resources required | boolean (Synchronize resources?) |
{- "synchronize_code": true,
- "rebase": true,
- "synchronize_data": true,
- "synchronize_resources": true
}
{- "status": "string",
- "code": 0
}
List versions associated with the {environmentId}
environment.
At least one version always exists.
When multiple versions exist, it means that multiple versions of an app are deployed.
The deployment target type denotes whether staged deployment is supported.
projectId required | string |
environmentId required | string |
[- {
- "commit": "string",
- "locked": true,
- "routing": {
- "percentage": 0
}
}
]
Create versions associated with the {environmentId}
environment.
At least one version always exists.
When multiple versions exist, it means that multiple versions of an app are deployed.
The deployment target type denotes whether staged deployment is supported.
projectId required | string |
environmentId required | string |
object (Configuration about the traffic routed to this version) |
{- "routing": {
- "percentage": 0
}
}
{- "status": "string",
- "code": 0
}
List the {versionId}
version.
A routing percentage for this version may be specified for staged rollouts
(if the deployment target supports it).
projectId required | string |
environmentId required | string |
versionId required | string |
{- "commit": "string",
- "locked": true,
- "routing": {
- "percentage": 0
}
}
Update the {versionId}
version.
A routing percentage for this version may be specified for staged rollouts
(if the deployment target supports it).
projectId required | string |
environmentId required | string |
versionId required | string |
object (Configuration about the traffic routed to this version) |
{- "routing": {
- "percentage": 0
}
}
{- "status": "string",
- "code": 0
}
Delete the {versionId}
version.
A routing percentage for this version may be specified for staged rollouts
(if the deployment target supports it).
projectId required | string |
environmentId required | string |
versionId required | string |
{- "status": "string",
- "code": 0
}
A snapshot is a complete backup of an environment, including all the persistent data from all services running in an environment and all files present in mounted volumes.
These endpoints can be used to trigger the creation of new snapshots, get information about existing snapshots, delete existing snapshots or restore a snapshot. More information about snapshots can be found in our Snapshot and Restore documentation.
Trigger a new snapshot of an environment to be created. See the Snapshot and Restore section of the documentation for more information.
projectId required | string |
environmentId required | string |
safe required | boolean (Take a safe or a live backup) |
{- "safe": true
}
{- "status": "string",
- "code": 0
}
Retrieve a list of objects representing backups of this environment.
projectId required | string |
environmentId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "status": "CREATED",
- "expires_at": "2019-08-24T14:15:22Z",
- "index": 0,
- "commit_id": "string",
- "environment": "string",
- "safe": true,
- "size_of_volumes": 0,
- "size_used": 0,
- "deployment": "string",
- "restorable": true,
- "automated": true
}
]
Get the details of a specific backup from an environment using the id
of the entry retrieved by the
Get backups list
endpoint.
projectId required | string |
environmentId required | string |
backupId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "status": "CREATED",
- "expires_at": "2019-08-24T14:15:22Z",
- "index": 0,
- "commit_id": "string",
- "environment": "string",
- "safe": true,
- "size_of_volumes": 0,
- "size_used": 0,
- "deployment": "string",
- "restorable": true,
- "automated": true
}
Delete a specific backup from an environment using the id
of the entry retrieved by the
Get backups list
endpoint.
projectId required | string |
environmentId required | string |
backupId required | string |
{- "status": "string",
- "code": 0
}
Restore a specific backup from an environment using the id
of the entry retrieved by the
Get backups list
endpoint.
projectId required | string |
environmentId required | string |
backupId required | string |
environment_name required | string or null (Environment name) |
branch_from required | string or null (Branch from) |
restore_code required | boolean (Whether we should restore the code or only the data) |
restore_resources required | boolean (Whether we should restore resources configuration from the backup) |
required | object or null (Resources) |
{- "environment_name": "string",
- "branch_from": "string",
- "restore_code": true,
- "restore_resources": true,
- "resources": {
- "init": "backup"
}
}
{- "status": "string",
- "code": 0
}
These endpoints manipulate user-defined variables which are bound to a specific environment, as well as (optionally) the children of an environment. These variables can be made available at both build time and runtime. For more information on environment variables, see the Variables section of the documentation.
Retrieve a list of objects representing the user-defined variables within an environment.
projectId required | string |
environmentId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true,
- "project": "string",
- "environment": "string",
- "inherited": true,
- "is_enabled": true,
- "is_inheritable": true
}
]
Add a variable to an environment. The value
can be either a string or a JSON
object (default: string), as specified by the is_json
boolean flag.
Additionally, the inheritability of an environment variable can be
determined through the is_inheritable
flag (default: true).
See the Variables
section in our documentation for more information.
projectId required | string |
environmentId required | string |
name required | string (Name) |
value required | string (Value) |
object (Arbitrary attributes attached to this resource) | |
is_json | boolean (The variable is a JSON string) |
is_sensitive | boolean (The variable is sensitive) |
visible_build | boolean (The variable is visible during build) |
visible_runtime | boolean (The variable is visible at runtime) |
is_enabled | boolean (The variable is enabled on this environment) |
is_inheritable | boolean (The variable is inheritable to child environments) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true,
- "is_enabled": true,
- "is_inheritable": true
}
{- "status": "string",
- "code": 0
}
Retrieve a single user-defined environment variable.
projectId required | string |
environmentId required | string |
variableId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true,
- "project": "string",
- "environment": "string",
- "inherited": true,
- "is_enabled": true,
- "is_inheritable": true
}
Update a single user-defined environment variable.
The value
can be either a string or a JSON
object (default: string), as specified by the is_json
boolean flag.
Additionally, the inheritability of an environment variable can be
determined through the is_inheritable
flag (default: true).
See the Variables
section in our documentation for more information.
projectId required | string |
environmentId required | string |
variableId required | string |
name | string (Name) |
object (Arbitrary attributes attached to this resource) | |
value | string (Value) |
is_json | boolean (The variable is a JSON string) |
is_sensitive | boolean (The variable is sensitive) |
visible_build | boolean (The variable is visible during build) |
visible_runtime | boolean (The variable is visible at runtime) |
is_enabled | boolean (The variable is enabled on this environment) |
is_inheritable | boolean (The variable is inheritable to child environments) |
{- "name": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "value": "string",
- "is_json": true,
- "is_sensitive": true,
- "visible_build": true,
- "visible_runtime": true,
- "is_enabled": true,
- "is_inheritable": true
}
{- "status": "string",
- "code": 0
}
These endpoints modify an environment's .platform/routes.yaml
file.
For routes to propagate to child environments, the child environments
must be synchronized with their parent.
Warning: These endpoints create a new commit in the project repository. This may lead to merge conflicts if you are using an external Git provider through our integrations.
We strongly recommend that you specify your routes in your
.platform/routes.yaml
file if you use an external Git integration such as GitHub or GitLab.
More information about routing can be found in the Routes section of the documentation.
Retrieve a list of objects containing route definitions for
a specific environment. The definitions returned by this endpoint
are those present in an environment's .platform/routes.yaml
file.
projectId required | string |
environmentId required | string |
[- {
- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
]
Add a new route to the specified environment. More information about how routes are defined can be found in the Routes section of the documentation.
This endpoint modifies an environment's .platform/routes.yaml
file.
For routes to propagate to child environments, the child environments
must be synchronized with their parent.
projectId required | string |
environmentId required | string |
type required | string (Route type.) Enum: "proxy" "redirect" "upstream" |
to required | string (Proxy destination) |
primary | boolean or null (This route is the primary route of the environment) |
id | string or null (Route Identifier) |
production_url | string or null (How this URL route would look on production environment) |
object (Arbitrary attributes attached to this resource) | |
object (TLS settings for the route.) |
{- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
{- "status": "string",
- "code": 0
}
Get details of a route from an environment using the id
of the entry
retrieved by the Get environment routes list
endpoint.
projectId required | string |
environmentId required | string |
routeId required | string |
{- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
Update a route in an environment using the id
of the entry
retrieved by the Get environment routes list
endpoint.
This endpoint modifies an environment's .platform/routes.yaml
file.
For routes to propagate to child environments, the child environments
must be synchronized with their parent.
projectId required | string |
environmentId required | string |
routeId required | string |
type required | string (Route type.) Enum: "proxy" "redirect" "upstream" |
to required | string (Proxy destination) |
primary | boolean or null (This route is the primary route of the environment) |
id | string or null (Route Identifier) |
production_url | string or null (How this URL route would look on production environment) |
object (Arbitrary attributes attached to this resource) | |
object (TLS settings for the route.) |
{- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
{- "status": "string",
- "code": 0
}
Remove a route from an environment using the id
of the entry
retrieved by the Get environment routes list
endpoint.
This endpoint modifies an environment's .platform/routes.yaml
file.
For routes to propagate to child environments, the child environments
must be synchronized with their parent.
projectId required | string |
environmentId required | string |
routeId required | string |
{- "status": "string",
- "code": 0
}
These endpoints interact with source code operations as defined in the source.operations
key in a project's .platform.app.yaml
configuration. More information
on source code operations is
available in our user documentation.
This endpoint triggers a source code operation as defined in the source.operations
key in a project's .platform.app.yaml
configuration. More information
on source code operations is
available in our user documentation.
projectId required | string |
environmentId required | string |
operation required | string (The name of the operation to execute) |
required | object (The variables of the application.) |
{- "operation": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}
}
{- "status": "string",
- "code": 0
}
Lists all the source operations, defined in .platform.app.yaml
, that are available in an environment.
More information on source code operations is
available in our user documentation.
projectId required | string |
environmentId required | string |
[- {
- "app": "string",
- "operation": "string",
- "command": "string"
}
]
Execute a runtime operation on a currently deployed environment. This allows you to run one-off commands, such as rebuilding static assets on demand, by defining an operations
key in a project's .platform.app.yaml
configuration. More information on runtime operations is available in our user documentation.
projectId required | string |
environmentId required | string |
deploymentId required | string |
service required | string (The name of the application or worker to run the operation on) |
operation required | string (The name of the operation) |
{- "service": "string",
- "operation": "string"
}
{- "status": "string",
- "code": 0
}
Retrieve the read-only configuration of an environment's deployment. The returned information is everything required to recreate a project's current deployment.
More specifically, the objects
returned by this endpoint contain the configuration derived from the
repository's YAML configuration files: .platform.app.yaml
,
.platform/services.yaml
, and .platform/routes.yaml
.
Additionally, any values deriving from environment variables, the domains attached to a project, project access settings, etc. are included here.
This endpoint currently returns a list containing a single deployment
configuration with an id
of current
. This may be subject to change
in the future.
projectId required | string |
environmentId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "fingerprint": "string",
- "cluster_name": "string",
- "project_info": {
- "title": "string",
- "name": "string",
- "namespace": "string",
- "organization": "string",
- "capabilities": { },
- "settings": { }
}, - "environment_info": {
- "name": "string",
- "status": "string",
- "is_main": true,
- "is_production": true,
- "reference": "string",
- "machine_name": "string",
- "environment_type": "string",
- "links": { }
}, - "deployment_target": "string",
- "vpn": {
- "version": 1,
- "aggressive": "no",
- "modeconfig": "pull",
- "authentication": "string",
- "gateway_ip": "string",
- "identity": "string",
- "second_identity": "string",
- "remote_identity": "string",
- "remote_subnets": [
- "string"
], - "ike": "string",
- "esp": "string",
- "ikelifetime": "string",
- "lifetime": "string",
- "margintime": "string"
}, - "http_access": {
- "is_enabled": true,
- "addresses": [
- {
- "permission": "allow",
- "address": "string"
}
], - "basic_auth": {
- "property1": "string",
- "property2": "string"
}
}, - "enable_smtp": true,
- "restrict_robots": true,
- "variables": [
- {
- "name": "string",
- "value": "string",
- "is_sensitive": true,
- "is_json": true,
- "visible_build": true,
- "visible_runtime": true
}
], - "access": [
- {
- "entity_id": "string",
- "role": "admin"
}
], - "subscription": {
- "license_uri": "string",
- "plan": "2xlarge",
- "environments": 0,
- "storage": 0,
- "included_users": 0,
- "subscription_management_uri": "string",
- "restricted": true,
- "suspended": true,
- "user_licenses": 0,
- "resources": {
- "container_profiles": true,
- "production": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}, - "development": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}
}, - "resource_validation_url": "string",
- "image_types": {
- "only": [
- "string"
], - "exclude": [
- "string"
]
}
}, - "services": {
- "property1": {
- "type": "string",
- "size": "2XL",
- "disk": 0,
- "access": { },
- "configuration": { },
- "relationships": {
- "property1": "string",
- "property2": "string"
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "container_profile": "string",
- "endpoints": { }
}, - "property2": {
- "type": "string",
- "size": "2XL",
- "disk": 0,
- "access": { },
- "configuration": { },
- "relationships": {
- "property1": "string",
- "property2": "string"
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "container_profile": "string",
- "endpoints": { }
}
}, - "routes": {
- "property1": {
- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}, - "property2": {
- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
}, - "webapps": {
- "property1": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "web": {
- "locations": {
- "property1": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}, - "property2": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}
}, - "commands": {
- "pre_start": "string",
- "start": "string"
}, - "upstream": {
- "socket_family": "tcp",
- "protocol": "fastcgi"
}, - "document_root": "string",
- "passthru": "string",
- "index_files": [
- "string"
], - "whitelist": [
- "string"
], - "blacklist": [
- "string"
], - "expires": "string",
- "move_to_root": true
}, - "hooks": {
- "build": "string",
- "deploy": "string",
- "post_deploy": "string"
}, - "crons": {
- "property1": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}, - "property2": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}
}, - "source": {
- "root": "string",
- "operations": {
- "property1": {
- "command": "string"
}, - "property2": {
- "command": "string"
}
}
}, - "build": {
- "flavor": "string",
- "caches": {
- "property1": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}, - "property2": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}
}
}, - "dependencies": {
- "property1": { },
- "property2": { }
}, - "stack": [
- { }
], - "is_across_submodule": true,
- "instance_count": 0,
- "config_id": "string",
- "slug_id": "string"
}, - "property2": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "web": {
- "locations": {
- "property1": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}, - "property2": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": null,
- "property2": null
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}
}, - "commands": {
- "pre_start": "string",
- "start": "string"
}, - "upstream": {
- "socket_family": "tcp",
- "protocol": "fastcgi"
}, - "document_root": "string",
- "passthru": "string",
- "index_files": [
- "string"
], - "whitelist": [
- "string"
], - "blacklist": [
- "string"
], - "expires": "string",
- "move_to_root": true
}, - "hooks": {
- "build": "string",
- "deploy": "string",
- "post_deploy": "string"
}, - "crons": {
- "property1": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}, - "property2": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}
}, - "source": {
- "root": "string",
- "operations": {
- "property1": {
- "command": "string"
}, - "property2": {
- "command": "string"
}
}
}, - "build": {
- "flavor": "string",
- "caches": {
- "property1": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}, - "property2": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}
}
}, - "dependencies": {
- "property1": { },
- "property2": { }
}, - "stack": [
- { }
], - "is_across_submodule": true,
- "instance_count": 0,
- "config_id": "string",
- "slug_id": "string"
}
}, - "workers": {
- "property1": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "worker": {
- "commands": {
- "pre_start": "string",
- "start": "string"
}, - "disk": 0
}, - "app": "string",
- "stack": [
- { }
], - "instance_count": 0,
- "slug_id": "string"
}, - "property2": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "worker": {
- "commands": {
- "pre_start": "string",
- "start": "string"
}, - "disk": 0
}, - "app": "string",
- "stack": [
- { }
], - "instance_count": 0,
- "slug_id": "string"
}
}, - "container_profiles": {
- "property1": {
- "property1": {
- "cpu": 0,
- "memory": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0
}
}, - "property2": {
- "property1": {
- "cpu": 0,
- "memory": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0
}
}
}
}
]
Retrieve a single deployment configuration with an id of current
. This may be subject to change in the future.
Only current
can be queried.
projectId required | string |
environmentId required | string |
deploymentId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "fingerprint": "string",
- "cluster_name": "string",
- "project_info": {
- "title": "string",
- "name": "string",
- "namespace": "string",
- "organization": "string",
- "capabilities": { },
- "settings": { }
}, - "environment_info": {
- "name": "string",
- "status": "string",
- "is_main": true,
- "is_production": true,
- "reference": "string",
- "machine_name": "string",
- "environment_type": "string",
- "links": { }
}, - "deployment_target": "string",
- "vpn": {
- "version": 1,
- "aggressive": "no",
- "modeconfig": "pull",
- "authentication": "string",
- "gateway_ip": "string",
- "identity": "string",
- "second_identity": "string",
- "remote_identity": "string",
- "remote_subnets": [
- "string"
], - "ike": "string",
- "esp": "string",
- "ikelifetime": "string",
- "lifetime": "string",
- "margintime": "string"
}, - "http_access": {
- "is_enabled": true,
- "addresses": [
- {
- "permission": "allow",
- "address": "string"
}
], - "basic_auth": {
- "property1": "string",
- "property2": "string"
}
}, - "enable_smtp": true,
- "restrict_robots": true,
- "variables": [
- {
- "name": "string",
- "value": "string",
- "is_sensitive": true,
- "is_json": true,
- "visible_build": true,
- "visible_runtime": true
}
], - "access": [
- {
- "entity_id": "string",
- "role": "admin"
}
], - "subscription": {
- "license_uri": "string",
- "plan": "2xlarge",
- "environments": 0,
- "storage": 0,
- "included_users": 0,
- "subscription_management_uri": "string",
- "restricted": true,
- "suspended": true,
- "user_licenses": 0,
- "resources": {
- "container_profiles": true,
- "production": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}, - "development": {
- "legacy_development": true,
- "max_cpu": 0,
- "max_memory": 0,
- "max_environments": 0
}
}, - "resource_validation_url": "string",
- "image_types": {
- "only": [
- "string"
], - "exclude": [
- "string"
]
}
}, - "services": {
- "property1": {
- "type": "string",
- "size": "2XL",
- "disk": 0,
- "access": { },
- "configuration": { },
- "relationships": {
- "property1": "string",
- "property2": "string"
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "container_profile": "string",
- "endpoints": { }
}, - "property2": {
- "type": "string",
- "size": "2XL",
- "disk": 0,
- "access": { },
- "configuration": { },
- "relationships": {
- "property1": "string",
- "property2": "string"
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "container_profile": "string",
- "endpoints": { }
}
}, - "routes": {
- "property1": {
- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}, - "property2": {
- "primary": true,
- "id": "string",
- "production_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}, - "type": "proxy",
- "tls": {
- "strict_transport_security": {
- "enabled": true,
- "include_subdomains": true,
- "preload": true
}, - "min_version": "TLSv1.0",
- "client_authentication": "request",
- "client_certificate_authorities": [
- "string"
]
}, - "to": "string"
}
}, - "webapps": {
- "property1": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "web": {
- "locations": {
- "property1": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}, - "property2": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}
}, - "commands": {
- "pre_start": "string",
- "start": "string"
}, - "upstream": {
- "socket_family": "tcp",
- "protocol": "fastcgi"
}, - "document_root": "string",
- "passthru": "string",
- "index_files": [
- "string"
], - "whitelist": [
- "string"
], - "blacklist": [
- "string"
], - "expires": "string",
- "move_to_root": true
}, - "hooks": {
- "build": "string",
- "deploy": "string",
- "post_deploy": "string"
}, - "crons": {
- "property1": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}, - "property2": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}
}, - "source": {
- "root": "string",
- "operations": {
- "property1": {
- "command": "string"
}, - "property2": {
- "command": "string"
}
}
}, - "build": {
- "flavor": "string",
- "caches": {
- "property1": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}, - "property2": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}
}
}, - "dependencies": {
- "property1": { },
- "property2": { }
}, - "stack": [
- { }
], - "is_across_submodule": true,
- "instance_count": 0,
- "config_id": "string",
- "slug_id": "string"
}, - "property2": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "web": {
- "locations": {
- "property1": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}, - "property2": {
- "root": "string",
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "index": [
- "string"
], - "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}, - "rules": {
- "property1": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}, - "property2": {
- "expires": "string",
- "passthru": "string",
- "scripts": true,
- "allow": true,
- "headers": {
- "property1": "string",
- "property2": "string"
}
}
}, - "request_buffering": {
- "enabled": true,
- "max_request_size": "string"
}
}
}, - "commands": {
- "pre_start": "string",
- "start": "string"
}, - "upstream": {
- "socket_family": "tcp",
- "protocol": "fastcgi"
}, - "document_root": "string",
- "passthru": "string",
- "index_files": [
- "string"
], - "whitelist": [
- "string"
], - "blacklist": [
- "string"
], - "expires": "string",
- "move_to_root": true
}, - "hooks": {
- "build": "string",
- "deploy": "string",
- "post_deploy": "string"
}, - "crons": {
- "property1": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}, - "property2": {
- "spec": "string",
- "commands": {
- "start": "string",
- "stop": "string"
}, - "shutdown_timeout": 0,
- "timeout": 0,
- "cmd": "string"
}
}, - "source": {
- "root": "string",
- "operations": {
- "property1": {
- "command": "string"
}, - "property2": {
- "command": "string"
}
}
}, - "build": {
- "flavor": "string",
- "caches": {
- "property1": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}, - "property2": {
- "directory": "string",
- "watch": [
- "string"
], - "allow_stale": true,
- "share_between_apps": true
}
}
}, - "dependencies": {
- "property1": { },
- "property2": { }
}, - "stack": [
- { }
], - "is_across_submodule": true,
- "instance_count": 0,
- "config_id": "string",
- "slug_id": "string"
}
}, - "workers": {
- "property1": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "worker": {
- "commands": {
- "pre_start": "string",
- "start": "string"
}, - "disk": 0
}, - "app": "string",
- "stack": [
- { }
], - "instance_count": 0,
- "slug_id": "string"
}, - "property2": {
- "resources": {
- "base_memory": 0,
- "memory_ratio": 0,
- "profile_size": "string",
- "minimum": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "default": {
- "cpu": 0,
- "memory": 0,
- "disk": 0,
- "profile_size": "string"
}, - "disk": {
- "temporary": 0,
- "instance": 0,
- "storage": 0
}
}, - "size": "2XL",
- "disk": 0,
- "access": {
- "property1": "admin",
- "property2": "admin"
}, - "relationships": {
- "property1": {
- "service": "string",
- "endpoint": "string"
}, - "property2": {
- "service": "string",
- "endpoint": "string"
}
}, - "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "mounts": {
- "property1": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}, - "property2": {
- "source": "instance",
- "source_path": "string",
- "service": "string"
}
}, - "timezone": "string",
- "variables": {
- "property1": {
- "property1": null,
- "property2": null
}, - "property2": {
- "property1": null,
- "property2": null
}
}, - "firewall": {
- "outbound": [
- {
- "protocol": "tcp",
- "ips": [
- "string"
], - "domains": [
- "string"
], - "ports": [
- 0
]
}
]
}, - "container_profile": "string",
- "operations": {
- "property1": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}, - "property2": {
- "commands": {
- "start": "string",
- "stop": "string"
}, - "timeout": 0,
- "role": "admin"
}
}, - "name": "string",
- "type": "string",
- "preflight": {
- "enabled": true,
- "ignored_rules": [
- "string"
]
}, - "tree_id": "string",
- "app_dir": "string",
- "endpoints": { },
- "runtime": { },
- "worker": {
- "commands": {
- "pre_start": "string",
- "start": "string"
}, - "disk": 0
}, - "app": "string",
- "stack": [
- { }
], - "instance_count": 0,
- "slug_id": "string"
}
}, - "container_profiles": {
- "property1": {
- "property1": {
- "cpu": 0,
- "memory": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0
}
}, - "property2": {
- "property1": {
- "cpu": 0,
- "memory": 0
}, - "property2": {
- "cpu": 0,
- "memory": 0
}
}
}
}
Retrieve a project's activity log including logging actions in all environments within a project. This returns a list of objects with records of actions such as:
The object includes a timestamp of when the action occurred
(created_at
), when the action concluded (updated_at
),
the current state
of the action, the action's completion
percentage (completion_percent
), the environments
it
applies to and other related information in
the payload
.
The contents of the payload
varies based on the type
of the
activity. For example:
An environment.branch
action's payload
can contain objects
representing the environment's parent
environment and the
branching action's outcome
.
An environment.push
action's payload
can contain objects
representing the environment
, the specific commits
included in
the push, and the user
who pushed.
projectId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "parameters": { },
- "project": "string",
- "integration": "string",
- "environments": [
- "string"
], - "state": "cancelled",
- "result": "failure",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "completion_percent": 0,
- "cancelled_at": "2019-08-24T14:15:22Z",
- "timings": {
- "property1": 0,
- "property2": 0
}, - "log": "string",
- "payload": { },
- "description": "string",
- "text": "string",
- "expires_at": "2019-08-24T14:15:22Z"
}
]
Retrieve a single activity log entry as specified by an
id
returned by the
Get project activity log
endpoint. See the documentation on that endpoint for details about
the information this endpoint can return.
projectId required | string |
activityId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "parameters": { },
- "project": "string",
- "integration": "string",
- "environments": [
- "string"
], - "state": "cancelled",
- "result": "failure",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "completion_percent": 0,
- "cancelled_at": "2019-08-24T14:15:22Z",
- "timings": {
- "property1": 0,
- "property2": 0
}, - "log": "string",
- "payload": { },
- "description": "string",
- "text": "string",
- "expires_at": "2019-08-24T14:15:22Z"
}
Cancel a single activity as specified by an id
returned by the
Get project activity log
endpoint.
Please note that not all activities are cancelable.
projectId required | string |
activityId required | string |
{- "status": "string",
- "code": 0
}
Retrieve an environment's activity log. This returns a list of object with records of actions such as:
The object includes a timestamp of when the action occurred
(created_at
), when the action concluded (updated_at
),
the current state
of the action, the action's completion
percentage (completion_percent
), and other related information in
the payload
.
The contents of the payload
varies based on the type
of the
activity. For example:
An environment.branch
action's payload
can contain objects
representing the parent
environment and the branching action's
outcome
.
An environment.push
action's payload
can contain objects
representing the environment
, the specific commits
included in
the push, and the user
who pushed.
projectId required | string |
environmentId required | string |
[- {
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "parameters": { },
- "project": "string",
- "integration": "string",
- "environments": [
- "string"
], - "state": "cancelled",
- "result": "failure",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "completion_percent": 0,
- "cancelled_at": "2019-08-24T14:15:22Z",
- "timings": {
- "property1": 0,
- "property2": 0
}, - "log": "string",
- "payload": { },
- "description": "string",
- "text": "string",
- "expires_at": "2019-08-24T14:15:22Z"
}
]
Retrieve a single environment activity entry as specified by an
id
returned by the
Get environment activities list
endpoint. See the documentation on that endpoint for details about
the information this endpoint can return.
projectId required | string |
environmentId required | string |
activityId required | string |
{- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "type": "string",
- "parameters": { },
- "project": "string",
- "integration": "string",
- "environments": [
- "string"
], - "state": "cancelled",
- "result": "failure",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "completion_percent": 0,
- "cancelled_at": "2019-08-24T14:15:22Z",
- "timings": {
- "property1": 0,
- "property2": 0
}, - "log": "string",
- "payload": { },
- "description": "string",
- "text": "string",
- "expires_at": "2019-08-24T14:15:22Z"
}
Cancel a single activity as specified by an id
returned by the
Get environment activities list
endpoint.
Please note that not all activities are cancelable.
projectId required | string |
environmentId required | string |
activityId required | string |
{- "status": "string",
- "code": 0
}
These endpoints can be used to manipulate the access control list at the project level. Users and roles defined here will apply globally to all environments within a project. For more fine-grained, environment-level access control, see the section entitled Environment Type Access.
Retrieve a list of objects specifying the users with access to a project and those users' roles.
projectId required | string |
[- {
- "user": "string",
- "role": "admin"
}
]
Add a user to a project's access control list
Note:
For more granular control and invitation by email, use
/invitations
.
projectId required | string |
role required | string (Role) Enum: "admin" "viewer" |
user | string (User) |
string (E-mail address) |
{- "user": "string",
- "email": "string",
- "role": "admin"
}
{- "status": "string",
- "code": 0
}
Retrieve the details of a user from a project's access control list
using the id
of the entry in the access control list
retrieved with the Get project access control list
endpoint.
projectId required | string |
projectAccessId required | string |
{- "user": "string",
- "role": "admin"
}
Change the role of a user from a project's access control list
using the id
of the entry in the access control list
retrieved with the Get project access control list
endpoint.
projectId required | string |
projectAccessId required | string |
role | string (Role) Enum: "admin" "viewer" |
{- "role": "admin"
}
{- "status": "string",
- "code": 0
}
Remove a user from a project's access control list
using the id
of the entry in the access control list
retrieved with the Get project access control list
endpoint.
projectId required | string |
projectAccessId required | string |
{- "status": "string",
- "code": 0
}
Returns a list of items representing the project access.
project_id required | string The ID of the project. |
page[size] | integer [ 1 .. 200 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Example: sort=-updated_at Allows sorting by a single field. |
{- "items": [
- {
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "organization_id": "string",
- "project_id": "string",
- "project_title": "string",
- "permissions": [
- "admin"
], - "granted_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Grants one or more users access to a specific project.
project_id required | string The ID of the project. |
user_id required | string ID of the user. |
permissions required | Array of strings (ProjectPermissions) Items Enum: "admin" "viewer" "development:admin" "development:contributor" "development:viewer" "staging:admin" "staging:contributor" "staging:viewer" "production:admin" "production:contributor" "production:viewer" An array of project permissions. |
auto_add_member | boolean If the specified user is not a member of the project's organization, add it automatically. |
[- {
- "user_id": "string",
- "permissions": [
- "admin"
], - "auto_add_member": true
}
]
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves the user's permissions for the current project.
project_id required | string The ID of the project. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "organization_id": "string",
- "project_id": "string",
- "project_title": "string",
- "permissions": [
- "admin"
], - "granted_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
Updates the user's permissions for the current project.
project_id required | string The ID of the project. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
permissions required | Array of strings (ProjectPermissions) Items Enum: "admin" "viewer" "development:admin" "development:contributor" "development:viewer" "staging:admin" "staging:contributor" "staging:viewer" "production:admin" "production:contributor" "production:viewer" An array of project permissions. |
{- "permissions": [
- "admin"
]
}
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Removes the user from the current project.
project_id required | string The ID of the project. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Environment Types is the way Platform.sh manages access. We currently have 3 enviroment types:
Each environment type will contain a group of users and their accesses. We manage access, adding, updating and removing users and their roles, here.
Each environemnt will have a type, pointing to one of these 3 environemnt types.
See type
in Environments.
In general:
Dedicated Generation 2 projects have different rules for environment types. If your project contains at least one of those Dedicated Generation 2 environments, the rules are slightly different:
development
.Lists the endpoints used to retrieve info about the environment type.
projectId required | string |
environmentTypeId required | string |
{- "attributes": {
- "property1": "string",
- "property2": "string"
}
}
These endpoints can be used to manipulate the access control list of a environment type at the environment type level—that is, users and roles defined here will apply specifically to a single environment type. See Environment Types
For more project-level access control, see the section entitled Project Access.
Retrieve a list of objects for users and their roles for the given environment type.
projectId required | string |
environmentTypeId required | string |
[- {
- "user": "string",
- "role": "admin"
}
]
Add a user to an environment type's access control list
Note:
For more granular control and invitation by email, use
/invitations
.
projectId required | string |
environmentTypeId required | string |
role required | string (Role) Enum: "admin" "contributor" "viewer" |
user | string (User) |
string (E-mail address) |
{- "user": "string",
- "email": "string",
- "role": "admin"
}
{- "status": "string",
- "code": 0
}
Retrieve the details of a user from an environment type's access control list
using the id
of the entry in the access control list
retrieved with the Get environment type's access control list
endpoint.
projectId required | string |
environmentTypeId required | string |
environmentTypeAccessId required | string |
{- "user": "string",
- "role": "admin"
}
Update the role of a user from an environment type's access control list
using the id
of the entry in the access control list
retrieved with the Get environment access control list
endpoint.
projectId required | string |
environmentTypeId required | string |
environmentTypeAccessId required | string |
role | string (Role) Enum: "admin" "contributor" "viewer" |
{- "role": "admin"
}
{- "status": "string",
- "code": 0
}
Remove a user from an environment type's access control list.
using the id
of the entry in the access control list
retrieved with the Get environment type access control list
endpoint.
projectId required | string |
environmentTypeId required | string |
environmentTypeAccessId required | string |
{- "status": "string",
- "code": 0
}
DEPRECATED
This endpoint is currently maintained for backwards compatibility, but it has been deprecated and its behaviour has changed, please, use Environment Type Access instead.
The access is no longer associated with an environment, but with environment types. Doing any operation
against an environment access endpoint will be the same as doing said operation against the environment type
access endpoint. For example, if you list or modify an access in an environment of type
development, you will be
effectively changing the environment type; all the environments of type
development would be affected.
Creates an invitation to an organization for a user with the specified email address.
organization_id required | string <ulid> The ID of the organization. |
email required | string <email> The email address of the invitee. |
permissions required | Array of strings Items Enum: "admin" "billing" "plans" "members" "projects:create" "projects:list" The permissions the invitee should be given on the organization. |
force | boolean Whether to cancel any pending invitation for the specified invitee, and create a new invitation. |
{- "email": "user@example.com",
- "permissions": [
- "admin"
], - "force": true
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "state": "pending",
- "organization_id": "string",
- "email": "user@example.com",
- "owner": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "finished_at": "2019-08-24T14:15:22Z",
- "permissions": [
- "billing"
]
}
Returns a list of invitations to an organization.
organization_id required | string <ulid> The ID of the organization. |
object (StringFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Enum: "updated_at" "-updated_at" Allows sorting by a single field. |
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "state": "pending",
- "organization_id": "string",
- "email": "user@example.com",
- "owner": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "finished_at": "2019-08-24T14:15:22Z",
- "permissions": [
- "billing"
]
}
]
Cancels the specified invitation.
organization_id required | string <ulid> The ID of the organization. |
invitation_id required | string The ID of the invitation. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Creates an invitation to a project for a user with the specified email address.
project_id required | string The ID of the project. |
email required | string <email> The email address of the invitee. |
role | string Default: null Enum: "admin" "viewer" The role the invitee should be given on the project. |
Array of objects Specifying the role on each environment type. | |
Array of objects Deprecated (Deprecated, use permissions instead) Specifying the role on each environment. | |
force | boolean Whether to cancel any pending invitation for the specified invitee, and create a new invitation. |
{- "role": "admin",
- "email": "user@example.com",
- "permissions": [
- {
- "type": "production",
- "role": "admin"
}
], - "environments": [
- {
- "id": "string",
- "role": "admin"
}
], - "force": true
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "state": "pending",
- "project_id": "string",
- "role": "admin",
- "email": "user@example.com",
- "owner": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "finished_at": "2019-08-24T14:15:22Z",
- "environments": [
- {
- "id": "string",
- "type": "string",
- "role": "admin",
- "title": "string"
}
]
}
Returns a list of invitations to a project.
project_id required | string The ID of the project. |
object (StringFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Enum: "updated_at" "-updated_at" Allows sorting by a single field. |
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "state": "pending",
- "project_id": "string",
- "role": "admin",
- "email": "user@example.com",
- "owner": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "finished_at": "2019-08-24T14:15:22Z",
- "environments": [
- {
- "id": "string",
- "type": "string",
- "role": "admin",
- "title": "string"
}
]
}
]
Cancels the specified invitation.
project_id required | string The ID of the project. |
invitation_id required | string The ID of the invitation. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves organizations that the specified user is a member of.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (DateTimeFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Example: sort=-updated_at Allows sorting by a single field. |
{- "items": [
- {
- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "namespace": "string",
- "name": "string",
- "label": "string",
- "country": "st",
- "capabilities": [
- "string"
], - "vendor": "string",
- "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}, - "members": {
- "href": "string"
}, - "create-member": {
- "href": "string",
- "method": "string"
}, - "address": {
- "href": "string"
}, - "profile": {
- "href": "string"
}, - "payment-source": {
- "href": "string"
}, - "orders": {
- "href": "string"
}, - "vouchers": {
- "href": "string"
}, - "apply-voucher": {
- "href": "string",
- "method": "string"
}, - "subscriptions": {
- "href": "string"
}, - "create-subscription": {
- "href": "string",
- "method": "string"
}, - "estimate-subscription": {
- "href": "string"
}, - "mfa-enforcement": {
- "href": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Non-admin users will only see organizations they are members of.
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (ArrayFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (DateTimeFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Example: sort=-updated_at Allows sorting by a single field. |
{- "count": 0,
- "items": [
- {
- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "namespace": "string",
- "name": "string",
- "label": "string",
- "country": "st",
- "capabilities": [
- "string"
], - "vendor": "string",
- "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}, - "members": {
- "href": "string"
}, - "create-member": {
- "href": "string",
- "method": "string"
}, - "address": {
- "href": "string"
}, - "profile": {
- "href": "string"
}, - "payment-source": {
- "href": "string"
}, - "orders": {
- "href": "string"
}, - "vouchers": {
- "href": "string"
}, - "apply-voucher": {
- "href": "string",
- "method": "string"
}, - "subscriptions": {
- "href": "string"
}, - "create-subscription": {
- "href": "string",
- "method": "string"
}, - "estimate-subscription": {
- "href": "string"
}, - "mfa-enforcement": {
- "href": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Creates a new organization.
label required | string The human-readable label of the organization. |
owner_id | string <uuid> ID of the owner. |
name | string A unique machine name representing the organization. |
country | string <= 2 characters The organization country (2-letter country code). |
{- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "name": "string",
- "label": "string",
- "country": "st"
}
{- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "namespace": "string",
- "name": "string",
- "label": "string",
- "country": "st",
- "capabilities": [
- "string"
], - "vendor": "string",
- "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}, - "members": {
- "href": "string"
}, - "create-member": {
- "href": "string",
- "method": "string"
}, - "address": {
- "href": "string"
}, - "profile": {
- "href": "string"
}, - "payment-source": {
- "href": "string"
}, - "orders": {
- "href": "string"
}, - "vouchers": {
- "href": "string"
}, - "apply-voucher": {
- "href": "string",
- "method": "string"
}, - "subscriptions": {
- "href": "string"
}, - "create-subscription": {
- "href": "string",
- "method": "string"
}, - "estimate-subscription": {
- "href": "string"
}, - "mfa-enforcement": {
- "href": "string"
}
}
}
Retrieves the specified organization.
organization_id required | string The ID of the organization. |
{- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "namespace": "string",
- "name": "string",
- "label": "string",
- "country": "st",
- "capabilities": [
- "string"
], - "vendor": "string",
- "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}, - "members": {
- "href": "string"
}, - "create-member": {
- "href": "string",
- "method": "string"
}, - "address": {
- "href": "string"
}, - "profile": {
- "href": "string"
}, - "payment-source": {
- "href": "string"
}, - "orders": {
- "href": "string"
}, - "vouchers": {
- "href": "string"
}, - "apply-voucher": {
- "href": "string",
- "method": "string"
}, - "subscriptions": {
- "href": "string"
}, - "create-subscription": {
- "href": "string",
- "method": "string"
}, - "estimate-subscription": {
- "href": "string"
}, - "mfa-enforcement": {
- "href": "string"
}
}
}
Updates the specified organization.
organization_id required | string <ulid> The ID of the organization. |
name | string A unique machine name representing the organization. |
label | string The human-readable label of the organization. |
country | string <= 2 characters The organization country (2-letter country code). |
{- "name": "string",
- "label": "string",
- "country": "st"
}
{- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "namespace": "string",
- "name": "string",
- "label": "string",
- "country": "st",
- "capabilities": [
- "string"
], - "vendor": "string",
- "status": "active",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}, - "members": {
- "href": "string"
}, - "create-member": {
- "href": "string",
- "method": "string"
}, - "address": {
- "href": "string"
}, - "profile": {
- "href": "string"
}, - "payment-source": {
- "href": "string"
}, - "orders": {
- "href": "string"
}, - "vouchers": {
- "href": "string"
}, - "apply-voucher": {
- "href": "string",
- "method": "string"
}, - "subscriptions": {
- "href": "string"
}, - "create-subscription": {
- "href": "string",
- "method": "string"
}, - "estimate-subscription": {
- "href": "string"
}, - "mfa-enforcement": {
- "href": "string"
}
}
}
Deletes the specified organization.
organization_id required | string <ulid> The ID of the organization. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Accessible to organization owners and members with the "manage members" permission.
organization_id required | string The ID of the organization. |
object (ArrayFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Example: sort=-updated_at Allows sorting by a single field. |
{- "count": 0,
- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "organization_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "permissions": [
- "admin"
], - "level": "admin",
- "owner": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Creates a new organization member.
organization_id required | string <ulid> The ID of the organization. |
user_id required | string <uuid> ID of the user. |
permissions | Array of strings (Permissions) Items Enum: "admin" "billing" "members" "plans" "projects:create" "projects:list" The organization member permissions. |
{- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "permissions": [
- "admin"
]
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "organization_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "permissions": [
- "admin"
], - "level": "admin",
- "owner": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
Retrieves the specified organization member.
organization_id required | string The ID of the organization. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "organization_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "permissions": [
- "admin"
], - "level": "admin",
- "owner": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
Updates the specified organization member.
organization_id required | string <ulid> The ID of the organization. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
permissions | Array of strings (Permissions) Items Enum: "admin" "billing" "members" "plans" "projects:create" "projects:list" The organization member permissions. |
{- "permissions": [
- "admin"
]
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "organization_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "permissions": [
- "admin"
], - "level": "admin",
- "owner": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
Deletes the specified organization member.
organization_id required | string <ulid> The ID of the organization. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves a list of API tokens associated with a single user.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "mfa_on_creation": true,
- "token": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "last_used_at": "2019-08-24T14:15:22Z"
}
]
Creates an API token
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
name required | string The token name. |
{- "name": "string"
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "mfa_on_creation": true,
- "token": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "last_used_at": "2019-08-24T14:15:22Z"
}
Retrieves the specified API token.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
token_id required | string <uuid> The ID of the token. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "mfa_on_creation": true,
- "token": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "last_used_at": "2019-08-24T14:15:22Z"
}
Deletes an API token
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
token_id required | string <uuid> The ID of the token. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves a list of connections associated with a single user.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
[- {
- "provider": "string",
- "is_mandatory": true,
- "subject": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
Retrieves the specified connection.
provider required | string The name of the federation provider. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "provider": "string",
- "is_mandatory": true,
- "subject": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Deletes the specified connection.
provider required | string The name of the federation provider. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Multi-factor authentication (MFA) requires the user to present two (or more) types of evidence (or factors) to prove their identity.
For example, the evidence might be a password and a device-generated code, which show the user has the knowledge factor ("something you know") as well as the possession factor ("something you have"). In this way MFA offers good protection against the compromise of any single factor, such as a stolen password.
Using the MFA API you can set up time-based one-time passcodes (TOTP), which can be generated on a single registered device ("something you have") such as a mobile phone.
Retrieves TOTP enrollment information.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "account_name": "string",
- "secret": "string",
- "qr_code": "string"
}
Confirms the given TOTP enrollment.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
secret required | string The secret seed for the enrollment |
passcode required | string TOTP passcode for the enrollment |
{- "secret": "string",
- "passcode": "string"
}
{- "recovery_codes": [
- "string"
]
}
Withdraws from the TOTP enrollment.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves MFA settings for the specified organization.
organization_id required | string The ID of the organization. |
{- "enforce_mfa": true
}
Enables MFA enforcement for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Disables MFA enforcement for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Sends a reminder about setting up MFA to the specified organization members.
organization_id required | string <ulid> The ID of the organization. |
user_ids | Array of strings <uuid> The organization members. |
{- "user_ids": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}
{- "property1": {
- "code": 0,
- "message": "string"
}, - "property2": {
- "code": 0,
- "message": "string"
}
}
Retrieve information about the currently logged-in user (the user associated with the access token).
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "username": "string",
- "display_name": "string",
- "status": 0,
- "mail": "user@example.com",
- "ssh_keys": [
- {
- "key_id": 0,
- "uid": 0,
- "fingerprint": "string",
- "title": "string",
- "value": "string",
- "changed": "string"
}
], - "has_key": true,
- "projects": [
- {
- "id": "string",
- "name": "string",
- "title": "string",
- "cluster": "string",
- "cluster_label": "string",
- "region": "string",
- "region_label": "string",
- "uri": "string",
- "endpoint": "string",
- "license_id": 0,
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}, - "plan": "string",
- "subscription_id": 0,
- "status": "string",
- "vendor": "string",
- "vendor_label": "string",
- "vendor_website": "string",
- "vendor_resources": "string",
- "created_at": "2019-08-24T14:15:22Z"
}
], - "sequence": 0,
- "roles": [
- "string"
], - "picture": "string",
- "tickets": { },
- "trial": true,
- "current_trial": [
- {
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "spend_remaining": "string",
- "expiration": "2019-08-24T14:15:22Z"
}
]
}
Retrieves the current user, determined from the used access token.
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deactivated": true,
- "namespace": "string",
- "username": "string",
- "email": "user@example.com",
- "email_verified": true,
- "first_name": "string",
- "last_name": "string",
- "company": "string",
- "country": "st",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "consented_at": "2019-08-24T14:15:22Z",
- "consent_method": "opt-in"
}
Retrieves a user matching the specified email address.
email required | string <email> Example: hello@example.com The user's email address. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deactivated": true,
- "namespace": "string",
- "username": "string",
- "email": "user@example.com",
- "email_verified": true,
- "first_name": "string",
- "last_name": "string",
- "company": "string",
- "country": "st",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "consented_at": "2019-08-24T14:15:22Z",
- "consent_method": "opt-in"
}
Retrieves the specified user.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deactivated": true,
- "namespace": "string",
- "username": "string",
- "email": "user@example.com",
- "email_verified": true,
- "first_name": "string",
- "last_name": "string",
- "company": "string",
- "country": "st",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "consented_at": "2019-08-24T14:15:22Z",
- "consent_method": "opt-in"
}
Updates the specified user.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
username | string The user's username. |
first_name | string The user's first name. |
last_name | string The user's last name. |
picture | string <uri> The user's picture. |
company | string The user's company. |
website | string <uri> The user's website. |
country | string = 2 characters The user's country (2-letter country code). |
{- "username": "string",
- "first_name": "string",
- "last_name": "string",
- "company": "string",
- "country": "st"
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deactivated": true,
- "namespace": "string",
- "username": "string",
- "email": "user@example.com",
- "email_verified": true,
- "first_name": "string",
- "last_name": "string",
- "company": "string",
- "country": "st",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "consented_at": "2019-08-24T14:15:22Z",
- "consent_method": "opt-in"
}
Requests a reset of the user's email address. A confirmation email will be sent to the new address when the request is accepted.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
email_address required | string <email> |
{- "email_address": "user@example.com"
}
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Requests a reset of the user's password. A password reset email will be sent to the user when the request is accepted.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Returns a list of items representing the user's project access.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
filter[organization_id] | string Allows filtering by |
page[size] | integer [ 1 .. 200 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Example: sort=-updated_at Allows sorting by a single field. |
{- "items": [
- {
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "organization_id": "string",
- "project_id": "string",
- "project_title": "string",
- "permissions": [
- "admin"
], - "granted_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Adds the user to one or more specified projects.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
project_id required | string ID of the project. |
permissions required | Array of strings (ProjectPermissions) Items Enum: "admin" "viewer" "development:admin" "development:contributor" "development:viewer" "staging:admin" "staging:contributor" "staging:viewer" "production:admin" "production:contributor" "production:viewer" An array of project permissions. |
[- {
- "project_id": "string",
- "permissions": [
- "admin"
]
}
]
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves the user's permissions for the current project.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
project_id required | string The ID of the project. |
{- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "organization_id": "string",
- "project_id": "string",
- "project_title": "string",
- "permissions": [
- "admin"
], - "granted_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "_links": {
- "self": {
- "href": "string"
}, - "update": {
- "href": "string",
- "method": "string"
}, - "delete": {
- "href": "string",
- "method": "string"
}
}
}
Updates the user's permissions for the current project.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
project_id required | string The ID of the project. |
permissions required | Array of strings (ProjectPermissions) Items Enum: "admin" "viewer" "development:admin" "development:contributor" "development:viewer" "staging:admin" "staging:contributor" "staging:viewer" "production:admin" "production:contributor" "production:viewer" An array of project permissions. |
{- "permissions": [
- "admin"
]
}
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Removes the user from the current project.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
project_id required | string The ID of the project. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
{- "count": 0,
- "profiles": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string",
- "email": "user@example.com",
- "username": "string",
- "type": "user",
- "picture": "string",
- "company_type": "string",
- "company_name": "string",
- "currency": "string",
- "vat_number": "string",
- "company_role": "string",
- "website_url": "string",
- "new_ui": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "marketing": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "billing_contact": "user@example.com",
- "security_contact": "user@example.com",
- "current_trial": {
- "active": true,
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "expiration": "2019-08-24T14:15:22Z",
- "current": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend_remaining": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string",
- "unlimited": true
}, - "projects": {
- "id": "string",
- "name": "string",
- "total": {
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string",
- "formatted": "string"
}
}, - "pending_verification": "credit-card",
- "model": "string",
- "days_remaining": 0
}, - "invoiced": true
}
], - "_links": {
- "self": {
- "title": "string",
- "href": "string"
}, - "previous": {
- "title": "string",
- "href": "string"
}, - "next": {
- "title": "string",
- "href": "string"
}
}
}
userId required | string The UUID of the user |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string",
- "email": "user@example.com",
- "username": "string",
- "type": "user",
- "picture": "string",
- "company_type": "string",
- "company_name": "string",
- "currency": "string",
- "vat_number": "string",
- "company_role": "string",
- "website_url": "string",
- "new_ui": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "marketing": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "billing_contact": "user@example.com",
- "security_contact": "user@example.com",
- "current_trial": {
- "active": true,
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "expiration": "2019-08-24T14:15:22Z",
- "current": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend_remaining": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string",
- "unlimited": true
}, - "projects": {
- "id": "string",
- "name": "string",
- "total": {
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string",
- "formatted": "string"
}
}, - "pending_verification": "credit-card",
- "model": "string",
- "days_remaining": 0
}, - "invoiced": true
}
Update a user profile, supplying one or more key/value pairs to to change.
userId required | string The UUID of the user |
display_name | string The user's display name. |
username | string The user's username. |
current_password | string The user's current password. |
password | string The user's new password. |
company_type | string The company type. |
company_name | string The name of the company. |
vat_number | string The vat number of the user. |
company_role | string The role of the user in the company. |
marketing | boolean Flag if the user agreed to receive marketing communication. |
ui_colorscheme | string The user's chosen color scheme for user interfaces. Available values are 'light' and 'dark'. |
default_catalog | string The URL of a catalog file which overrides the default. |
project_options_url | string The URL of an account-wide project options file. |
picture | string Url of the user's picture. |
{- "display_name": "string",
- "username": "string",
- "current_password": "string",
- "password": "string",
- "company_type": "string",
- "company_name": "string",
- "vat_number": "string",
- "company_role": "string",
- "marketing": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "picture": "string"
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string",
- "email": "user@example.com",
- "username": "string",
- "type": "user",
- "picture": "string",
- "company_type": "string",
- "company_name": "string",
- "currency": "string",
- "vat_number": "string",
- "company_role": "string",
- "website_url": "string",
- "new_ui": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "marketing": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "billing_contact": "user@example.com",
- "security_contact": "user@example.com",
- "current_trial": {
- "active": true,
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "expiration": "2019-08-24T14:15:22Z",
- "current": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend_remaining": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string",
- "unlimited": true
}, - "projects": {
- "id": "string",
- "name": "string",
- "total": {
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string",
- "formatted": "string"
}
}, - "pending_verification": "credit-card",
- "model": "string",
- "days_remaining": 0
}, - "invoiced": true
}
userId required | string The UUID of the user |
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string",
- "metadata": {
- "required_fields": [
- "string"
], - "field_labels": { }
}
}
Update a user address, supplying one or more key/value pairs to to change.
userId required | string The UUID of the user |
country | string <ISO ALPHA-2> Two-letter country codes are used to represent countries and states |
name_line | string The full name of the user |
premise | string Premise (i.e. Apt, Suite, Bldg.) |
sub_premise | string Sub Premise (i.e. Suite, Apartment, Floor, Unknown. |
thoroughfare | string The address of the user |
administrative_area | string <ISO ALPHA-2> The administrative area of the user address |
sub_administrative_area | string The sub-administrative area of the user address |
locality | string The locality of the user address |
dependent_locality | string The dependant_locality area of the user address |
postal_code | string The postal code area of the user address |
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string",
- "metadata": {
- "required_fields": [
- "string"
], - "field_labels": { }
}
}
value required | string The value of the ssh key. |
title | string The title of the ssh key. |
uuid | string The uuid of the user. |
{- "value": "string",
- "title": "string",
- "uuid": "string"
}
{- "key_id": 0,
- "uid": 0,
- "fingerprint": "string",
- "title": "string",
- "value": "string",
- "changed": "string"
}
Retrieves a list of teams.
object (StringFilter) Allows filtering by | |
object (StringFilter) Allows filtering by | |
object (DateTimeFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Enum: "label" "-label" "created_at" "-created_at" "updated_at" "-updated_at" Allows sorting by a single field. |
{- "items": [
- {
- "id": "string",
- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "admin"
], - "counts": {
- "member_count": 0,
- "project_count": 0
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "count": 0,
- "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Creates a new team.
organization_id required | string <ulid> The ID of the parent organization. |
label required | string The human-readable label of the team. |
project_permissions | Array of strings Project permissions that are granted to the team. |
{- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "string"
]
}
{- "id": "string",
- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "admin"
], - "counts": {
- "member_count": 0,
- "project_count": 0
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Retrieves the specified team.
team_id required | string The ID of the team. |
{- "id": "string",
- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "admin"
], - "counts": {
- "member_count": 0,
- "project_count": 0
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Updates the specified team.
team_id required | string The ID of the team. |
label | string The human-readable label of the team. |
project_permissions | Array of strings Project permissions that are granted to the team. |
{- "label": "string",
- "project_permissions": [
- "string"
]
}
{- "id": "string",
- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "admin"
], - "counts": {
- "member_count": 0,
- "project_count": 0
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Retrieves a list of users associated with a single team.
team_id required | string The ID of the team. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Enum: "created_at" "-created_at" "updated_at" "-updated_at" Allows sorting by a single field. |
{- "items": [
- {
- "team_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Creates a new team member.
team_id required | string The ID of the team. |
user_id required | string <uuid> ID of the user. |
{- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5"
}
{- "team_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Retrieves the specified team member.
team_id required | string The ID of the team. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "team_id": "string",
- "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
Deletes the specified team member.
team_id required | string The ID of the team. |
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
Retrieves teams that the specified user is a member of.
user_id required | string <uuid> Example: d81c8ee2-44b3-429f-b944-a33ad7437690 The ID of the user. |
object (StringFilter) Allows filtering by | |
object (DateTimeFilter) Allows filtering by | |
page[size] | integer [ 1 .. 100 ] Default: null Determines the number of items to show. |
page[before] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
page[after] | string Pagination cursor. This is automatically generated as necessary and provided in HAL links (_links); it should not be constructed externally. |
sort | string Enum: "created_at" "-created_at" "updated_at" "-updated_at" Allows sorting by a single field. |
{- "items": [
- {
- "id": "string",
- "organization_id": "string",
- "label": "string",
- "project_permissions": [
- "admin"
], - "counts": {
- "member_count": 0,
- "project_count": 0
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "count": 0,
- "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Retrieve information about plans and pricing on Platform.sh.
{- "count": 0,
- "plans": [
- {
- "name": "string",
- "label": "string"
}
], - "_links": {
- "self": {
- "title": "string",
- "href": "string"
}, - "previous": {
- "title": "string",
- "href": "string"
}, - "next": {
- "title": "string",
- "href": "string"
}
}
}
Retrieves a list of users referenced by a trusted service. Clients cannot construct the URL themselves. The correct URL will be provided in the HAL links of another API response, in the _links
object with a key like ref:users:0
.
in required | string The list of comma-separated user IDs generated by a trusted service. |
sig required | string The signature of this request generated by a trusted service. |
{- "497f6eca-6276-4993-bfeb-53cbbbba6f08": {
- "email": "user@example.com",
- "first_name": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "last_name": "string",
- "username": "string",
- "mfa_enabled": false,
- "sso_enabled": false
}
}
Retrieves a list of teams referenced by a trusted service. Clients cannot construct the URL themselves. The correct URL will be provided in the HAL links of another API response, in the _links
object with a key like ref:teams:0
.
in required | string The list of comma-separated team IDs generated by a trusted service. |
sig required | string The signature of this request generated by a trusted service. |
{- "01FVMKN9KHVWWVY488AVKDWHR3": {
- "id": "01FVMKN9KHVWWVY488AVKDWHR3",
- "label": "Contractors"
}
}
Retrieves a list of organizations referenced by a trusted service. Clients cannot construct the URL themselves. The correct URL will be provided in the HAL links of another API response, in the _links
object with a key like ref:organizations:0
.
in required | string The list of comma-separated organization IDs generated by a trusted service. |
sig required | string The signature of this request generated by a trusted service. |
{- "property1": {
- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "name": "string",
- "label": "string",
- "vendor": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "property2": {
- "id": "string",
- "owner_id": "8826ee2e-7933-4665-aef2-2393f84a0d05",
- "name": "string",
- "label": "string",
- "vendor": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Each project is represented by a subscription that holds the plan information. These endpoints can be used to go to a larger plan, add more storage, or subscribe to optional features.
Retrieves subscriptions for the specified organization.
organization_id required | string The ID of the organization. |
filter[status] | string Enum: "active" "provisioning" "provisioning failure" "suspended" "deleted" The status of the subscription. |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "items": [
- {
- "id": "string",
- "status": "requested",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}, - "vendor": "string",
- "plan": "string",
- "environments": 0,
- "storage": 0,
- "user_licenses": 0,
- "project_id": "string",
- "project_endpoint": "string",
- "project_title": "string",
- "project_region": "string",
- "project_region_label": "string",
- "project_ui": "string",
- "project_options": {
- "defaults": {
- "settings": { },
- "variables": { },
- "access": { },
- "capabilities": { }
}, - "enforced": {
- "settings": { },
- "capabilities": { }
}, - "regions": [
- "string"
], - "plans": [
- "string"
], - "billing": { }
}, - "agency_site": true,
- "invoiced": true,
- "hipaa": true,
- "is_trial_plan": true,
- "services": [
- { }
], - "green": true
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Creates a subscription for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
project_region required | string The machine name of the region where the project is located. Cannot be changed after project creation. |
plan | string (PlanType) Enum: "development" "standard" "medium" "large" "xlarge" "2xlarge" "4xlarge" "8xlarge" The plan type of the subscription. |
project_title | string The name given to the project. Appears as the title in the UI. |
options_url | string The URL of the project options file. |
options_custom | object Customizations at creation time integrated into project options. |
default_branch | string The default Git branch name for the project. |
environments | integer The maximum number of active environments on the project. |
storage | integer The total storage available to each environment, in MiB. Only multiples of 1024 are accepted as legal values. |
{- "plan": "development",
- "project_region": "string",
- "project_title": "string",
- "options_url": "string",
- "options_custom": { },
- "default_branch": "string",
- "environments": 0,
- "storage": 0
}
{- "id": "string",
- "status": "requested",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}, - "vendor": "string",
- "plan": "string",
- "environments": 0,
- "storage": 0,
- "user_licenses": 0,
- "project_id": "string",
- "project_endpoint": "string",
- "project_title": "string",
- "project_region": "string",
- "project_region_label": "string",
- "project_ui": "string",
- "project_options": {
- "defaults": {
- "settings": { },
- "variables": { },
- "access": { },
- "capabilities": { }
}, - "enforced": {
- "settings": { },
- "capabilities": { }
}, - "regions": [
- "string"
], - "plans": [
- "string"
], - "billing": { }
}, - "agency_site": true,
- "invoiced": true,
- "hipaa": true,
- "is_trial_plan": true,
- "services": [
- { }
], - "green": true
}
Retrieves a subscription for the specified organization.
organization_id required | string The ID of the organization. |
subscription_id required | string The ID of the subscription. |
{- "id": "string",
- "status": "requested",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}, - "vendor": "string",
- "plan": "string",
- "environments": 0,
- "storage": 0,
- "user_licenses": 0,
- "project_id": "string",
- "project_endpoint": "string",
- "project_title": "string",
- "project_region": "string",
- "project_region_label": "string",
- "project_ui": "string",
- "project_options": {
- "defaults": {
- "settings": { },
- "variables": { },
- "access": { },
- "capabilities": { }
}, - "enforced": {
- "settings": { },
- "capabilities": { }
}, - "regions": [
- "string"
], - "plans": [
- "string"
], - "billing": { }
}, - "agency_site": true,
- "invoiced": true,
- "hipaa": true,
- "is_trial_plan": true,
- "services": [
- { }
], - "green": true
}
Updates a subscription for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
subscription_id required | string The ID of the subscription. |
plan required | string (PlanType) Enum: "development" "standard" "medium" "large" "xlarge" "2xlarge" "4xlarge" "8xlarge" The plan type of the subscription. |
environments | integer The maximum number of environments which can be provisioned on the project. |
storage | integer The total storage available to each environment, in MiB. |
big_dev | string The development environment plan. |
big_dev_service | string The development service plan. |
backups | string The backups plan. |
observability_suite | string The observability suite option. |
blackfire | string The Blackfire integration option. |
continuous_profiling | string The Blackfire continuous profiling option. |
{- "plan": "development",
- "environments": 0,
- "storage": 0,
- "big_dev": "string",
- "big_dev_service": "string",
- "backups": "string",
- "observability_suite": "string",
- "blackfire": "string",
- "continuous_profiling": "string"
}
{- "id": "string",
- "status": "requested",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}, - "vendor": "string",
- "plan": "string",
- "environments": 0,
- "storage": 0,
- "user_licenses": 0,
- "project_id": "string",
- "project_endpoint": "string",
- "project_title": "string",
- "project_region": "string",
- "project_region_label": "string",
- "project_ui": "string",
- "project_options": {
- "defaults": {
- "settings": { },
- "variables": { },
- "access": { },
- "capabilities": { }
}, - "enforced": {
- "settings": { },
- "capabilities": { }
}, - "regions": [
- "string"
], - "plans": [
- "string"
], - "billing": { }
}, - "agency_site": true,
- "invoiced": true,
- "hipaa": true,
- "is_trial_plan": true,
- "services": [
- { }
], - "green": true
}
Deletes a subscription for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
subscription_id required | string The ID of the subscription. |
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
organization_id required | string <ulid> The ID of the organization. |
plan required | string The plan type of the subscription. |
environments required | integer The maximum number of environments which can be provisioned on the project. |
storage required | integer The total storage available to each environment, in MiB. |
user_licenses required | integer The number of user licenses. |
format | string Enum: "formatted" "complex" The format of the estimation output. |
{- "plan": "string",
- "user_licenses": "string",
- "environments": "string",
- "storage": "string",
- "total": "string",
- "options": { }
}
organization_id required | string <ulid> The ID of the organization. |
{- "can_create": true,
- "message": "string",
- "required_action": {
- "action": "string",
- "type": "string"
}
}
organization_id required | string <ulid> The ID of the organization. |
subscription_id required | string The ID of the subscription. |
plan required | string The plan type of the subscription. |
environments | integer The maximum number of environments which can be provisioned on the project. |
storage | integer The total storage available to each environment, in MiB. |
user_licenses | integer The number of user licenses. |
format | string Enum: "formatted" "complex" The format of the estimation output. |
{- "plan": "string",
- "user_licenses": "string",
- "environments": "string",
- "storage": "string",
- "total": "string",
- "options": { }
}
organization_id required | string <ulid> The ID of the organization. |
subscription_id required | string The ID of the subscription. |
usage_groups | string A list of usage groups to retrieve current usage for. |
include_not_charged | boolean Whether to include not charged usage groups. |
{- "cpu_app": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "storage_app_services": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "memory_app": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "cpu_services": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "memory_services": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "backup_storage": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "build_cpu": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "build_memory": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "egress_bandwidth": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "ingress_requests": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "logs_fwd_content_size": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "fastly_bandwidth": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}, - "fastly_requests": {
- "title": "string",
- "type": true,
- "current_usage": 0,
- "current_usage_formatted": "string",
- "not_charged": true,
- "free_quantity": 0,
- "free_quantity_formatted": "string",
- "daily_average": 0,
- "daily_average_formatted": "string"
}
}
organization_id required | string <ulid> The ID of the organization. |
subscription_id required | string The ID of the subscription. |
{- "available": {
- "continuous_profiling": {
- "cont-profiling": 0
}
}, - "current": {
- "continuous_profiling": {
- "cont-profiling": 0
}
}, - "upgrades_available": { }
}
These endpoints can be used to retrieve order information from our billing system. Here you can view information about your bill for our services, include the billed amount and a link to a PDF of the bill.
Retrieves orders for the specified organization.
organization_id required | string The ID of the organization. |
filter[status] | string Enum: "completed" "past_due" "pending" "canceled" "payment_failed_soft_decline" "payment_failed_hard_decline" The status of the order. |
filter[total] | integer The total of the order. |
page | integer <int32> Page to be displayed. Defaults to 1. |
mode | string Value: "details" The output mode. |
{- "items": [
- {
- "id": "string",
- "status": "completed",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "address": {
- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}, - "vat_number": "string",
- "billing_period_start": "2019-08-24T14:15:22Z",
- "billing_period_end": "2019-08-24T14:15:22Z",
- "billing_period_label": {
- "formatted": "string",
- "month": "string",
- "year": "string",
- "next_month": "string"
}, - "billing_period_duration": 0,
- "paid_on": "2019-08-24T14:15:22Z",
- "total": 0,
- "total_formatted": 0,
- "components": {
- "voucher/vat/baseprice": { }
}, - "currency": "string",
- "invoice_url": "string",
- "last_refreshed": "2019-08-24T14:15:22Z",
- "invoiced": true,
- "line_items": [
- {
- "type": "project_plan",
- "product": "string",
- "total": 0,
- "total_formatted": "string",
- "components": {
- "property1": {
- "amount": 0,
- "amount_formatted": "string",
- "display_title": "string",
- "currency": "string"
}, - "property2": {
- "amount": 0,
- "amount_formatted": "string",
- "display_title": "string",
- "currency": "string"
}
}, - "exclude_from_invoice": true
}
], - "_links": {
- "invoices": {
- "href": "string"
}
}
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Retrieves an order for the specified organization.
organization_id required | string The ID of the organization. |
order_id required | string The ID of the order. |
mode | string Value: "details" The output mode. |
{- "id": "string",
- "status": "completed",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "address": {
- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}, - "vat_number": "string",
- "billing_period_start": "2019-08-24T14:15:22Z",
- "billing_period_end": "2019-08-24T14:15:22Z",
- "billing_period_label": {
- "formatted": "string",
- "month": "string",
- "year": "string",
- "next_month": "string"
}, - "billing_period_duration": 0,
- "paid_on": "2019-08-24T14:15:22Z",
- "total": 0,
- "total_formatted": 0,
- "components": {
- "voucher/vat/baseprice": { }
}, - "currency": "string",
- "invoice_url": "string",
- "last_refreshed": "2019-08-24T14:15:22Z",
- "invoiced": true,
- "line_items": [
- {
- "type": "project_plan",
- "product": "string",
- "total": 0,
- "total_formatted": "string",
- "components": {
- "property1": {
- "amount": 0,
- "amount_formatted": "string",
- "display_title": "string",
- "currency": "string"
}, - "property2": {
- "amount": 0,
- "amount_formatted": "string",
- "display_title": "string",
- "currency": "string"
}
}, - "exclude_from_invoice": true
}
], - "_links": {
- "invoices": {
- "href": "string"
}
}
}
These endpoints can be used to retrieve invoices from our billing system. An invoice of type "invoice" is generated automatically every month, if the customer has active projects. Invoices of type "credit_memo" are a result of manual action when there was a refund or an invoice correction.
Retrieves a list of invoices for the specified organization.
organization_id required | string The ID of the organization. |
filter[status] | string Enum: "paid" "charged_off" "pending" "refunded" "canceled" "refund_pending" The status of the invoice. |
filter[type] | string Enum: "credit_memo" "invoice" The invoice type. Use invoice for standard invoices, credit_memo for refund/credit invoices. |
filter[order_id] | string The order id of Invoice. |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "items": [
- {
- "id": "string",
- "invoice_number": "string",
- "type": "invoice",
- "order_id": "string",
- "related_invoice_id": "string",
- "status": "paid",
- "owner": "string",
- "invoice_date": "2019-08-24T14:15:22Z",
- "invoice_due": "2019-08-24T14:15:22Z",
- "created": "2019-08-24T14:15:22Z",
- "changed": "2019-08-24T14:15:22Z",
- "company": "string",
- "total": 0,
- "address": {
- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}, - "notes": "string",
- "invoice_pdf": {
- "url": "string",
- "status": "ready"
}
}
]
}
Retrieves an invoice for the specified organization.
invoice_id required | string The ID of the invoice. |
organization_id required | string The ID of the organization. |
{- "id": "string",
- "invoice_number": "string",
- "type": "invoice",
- "order_id": "string",
- "related_invoice_id": "string",
- "status": "paid",
- "owner": "string",
- "invoice_date": "2019-08-24T14:15:22Z",
- "invoice_due": "2019-08-24T14:15:22Z",
- "created": "2019-08-24T14:15:22Z",
- "changed": "2019-08-24T14:15:22Z",
- "company": "string",
- "total": 0,
- "address": {
- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}, - "notes": "string",
- "invoice_pdf": {
- "url": "string",
- "status": "ready"
}
}
id required | string The ID of the organization discount |
{- "id": 0,
- "organization_id": "string",
- "type": "allowance",
- "type_label": "string",
- "status": "inactive",
- "commitment": {
- "months": 0,
- "amount": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}, - "net": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}
}, - "total_months": 0,
- "discount": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}, - "config": { },
- "start_at": "2019-08-24T14:15:22Z",
- "end_at": "2019-08-24T14:15:22Z"
}
{- "currencies": {
- "EUR": {
- "formatted": "string",
- "amount": 0,
- "currency": "string",
- "currency_symbol": "string"
}, - "USD": {
- "formatted": "string",
- "amount": 0,
- "currency": "string",
- "currency_symbol": "string"
}, - "GBP": {
- "formatted": "string",
- "amount": 0,
- "currency": "string",
- "currency_symbol": "string"
}, - "AUD": {
- "formatted": "string",
- "amount": 0,
- "currency": "string",
- "currency_symbol": "string"
}, - "CAD": {
- "formatted": "string",
- "amount": 0,
- "currency": "string",
- "currency_symbol": "string"
}
}
}
Retrieves all applicable discounts granted to the specified organization.
organization_id required | string The ID of the organization. |
{- "items": [
- {
- "id": 0,
- "organization_id": "string",
- "type": "allowance",
- "type_label": "string",
- "status": "inactive",
- "commitment": {
- "months": 0,
- "amount": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}, - "net": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}
}, - "total_months": 0,
- "discount": {
- "monthly": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "commitment_period": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}, - "contract_total": {
- "formatted": "string",
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string"
}
}, - "config": { },
- "start_at": "2019-08-24T14:15:22Z",
- "end_at": "2019-08-24T14:15:22Z"
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
These endpoints can be used to retrieve vouchers associated with a particular user as well as apply a voucher to a particular user.
Retrieves vouchers for the specified organization.
organization_id required | string The ID of the organization. |
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "vouchers_total": "string",
- "vouchers_applied": "string",
- "vouchers_remaining_balance": "string",
- "currency": "string",
- "vouchers": [
- {
- "code": "string",
- "amount": "string",
- "currency": "string",
- "orders": [
- {
- "order_id": "string",
- "status": "string",
- "billing_period_start": "string",
- "billing_period_end": "string",
- "order_total": "string",
- "order_discount": "string",
- "currency": "string"
}
]
}
], - "_links": {
- "self": {
- "href": "string"
}
}
}
Applies a voucher for the specified organization, and refreshes the currently open order.
organization_id required | string <ulid> The ID of the organization. |
code required | string The voucher code. |
{- "code": "string"
}
{- "status": "string",
- "message": "string",
- "code": 0,
- "detail": { },
- "title": "string"
}
These endpoints retrieve information about which plans were assigned to a particular project at which time.
Retrieves plan records for the specified organization.
organization_id required | string The ID of the organization. |
filter[subscription_id] | string The ID of the subscription |
filter[plan] | string Enum: "development" "standard" "medium" "large" "xlarge" "2xlarge" The plan type of the subscription. |
filter[status] | string Enum: "active" "suspended" The status of the plan record. |
filter[start] | string <date-time> The start of the observation period for the record. E.g. filter[start]=2018-01-01 will display all records that were active (i.e. did not end) on 2018-01-01 |
filter[end] | string <date-time> The end of the observation period for the record. E.g. filter[end]=2018-01-01 will display all records that were active on (i.e. they started before) 2018-01-01 |
filter[started_at] | string <date-time> The record's start timestamp. You can use this filter to list records started after, or before a certain time. E.g. filter[started_at][value]=2020-01-01&filter[started_at][operator]=> |
filter[ended_at] | string <date-time> The record's end timestamp. You can use this filter to list records ended after, or before a certain time. E.g. filter[ended_at][value]=2020-01-01&filter[ended_at][operator]=> |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "items": [
- {
- "id": "string",
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "subscription_id": "string",
- "sku": "string",
- "plan": "string",
- "options": [
- "string"
], - "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "status": "string"
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Retrieves usage records for the specified organization.
organization_id required | string The ID of the organization. |
filter[subscription_id] | string The ID of the subscription |
filter[usage_group] | string Enum: "storage" "environments" "user_licenses" Filter records by the type of usage. |
filter[start] | string <date-time> The start of the observation period for the record. E.g. filter[start]=2018-01-01 will display all records that were active (i.e. did not end) on 2018-01-01 |
filter[started_at] | string <date-time> The record's start timestamp. You can use this filter to list records started after, or before a certain time. E.g. filter[started_at][value]=2020-01-01&filter[started_at][operator]=> |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "items": [
- {
- "id": "string",
- "subscription_id": "string",
- "usage_group": "string",
- "quantity": 0,
- "start": "2019-08-24T14:15:22Z"
}
], - "_links": {
- "self": {
- "href": "string"
}, - "previous": {
- "href": "string"
}, - "next": {
- "href": "string"
}
}
}
Retrieves the address for the specified organization.
organization_id required | string The ID of the organization. |
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}
Updates the address for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
country | string <ISO ALPHA-2> Two-letter country codes are used to represent countries and states |
name_line | string The full name of the user |
premise | string Premise (i.e. Apt, Suite, Bldg.) |
sub_premise | string Sub Premise (i.e. Suite, Apartment, Floor, Unknown. |
thoroughfare | string The address of the user |
administrative_area | string <ISO ALPHA-2> The administrative area of the user address |
sub_administrative_area | string The sub-administrative area of the user address |
locality | string The locality of the user address |
dependent_locality | string The dependant_locality area of the user address |
postal_code | string The postal code area of the user address |
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}
{- "country": "string",
- "name_line": "string",
- "premise": "string",
- "sub_premise": "string",
- "thoroughfare": "string",
- "administrative_area": "string",
- "sub_administrative_area": "string",
- "locality": "string",
- "dependent_locality": "string",
- "postal_code": "string"
}
Retrieves the profile for the specified organization.
organization_id required | string The ID of the organization. |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string",
- "email": "user@example.com",
- "username": "string",
- "type": "user",
- "picture": "string",
- "company_type": "string",
- "company_name": "string",
- "currency": "string",
- "vat_number": "string",
- "company_role": "string",
- "website_url": "string",
- "new_ui": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "marketing": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "billing_contact": "user@example.com",
- "security_contact": "user@example.com",
- "current_trial": {
- "active": true,
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "expiration": "2019-08-24T14:15:22Z",
- "current": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend_remaining": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string",
- "unlimited": true
}, - "projects": {
- "id": "string",
- "name": "string",
- "total": {
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string",
- "formatted": "string"
}
}, - "pending_verification": "credit-card",
- "model": "string",
- "days_remaining": 0
}, - "invoiced": true
}
Updates the profile for the specified organization.
organization_id required | string <ulid> The ID of the organization. |
default_catalog | string The URL of a catalog file which overrides the default. |
project_options_url | string <uri> The URL of an organization-wide project options file. |
security_contact | string <email> The e-mail address of a contact to whom security notices will be sent. |
company_name | string The company name. |
vat_number | string The VAT number of the company. |
billing_contact | string <email> The e-mail address of a contact to whom billing notices will be sent. |
{- "default_catalog": "string",
- "security_contact": "user@example.com",
- "company_name": "string",
- "vat_number": "string",
- "billing_contact": "user@example.com"
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "display_name": "string",
- "email": "user@example.com",
- "username": "string",
- "type": "user",
- "picture": "string",
- "company_type": "string",
- "company_name": "string",
- "currency": "string",
- "vat_number": "string",
- "company_role": "string",
- "website_url": "string",
- "new_ui": true,
- "ui_colorscheme": "string",
- "default_catalog": "string",
- "project_options_url": "string",
- "marketing": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "billing_contact": "user@example.com",
- "security_contact": "user@example.com",
- "current_trial": {
- "active": true,
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "expiration": "2019-08-24T14:15:22Z",
- "current": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string"
}, - "spend_remaining": {
- "formatted": "string",
- "amount": "string",
- "currency": "string",
- "currency_symbol": "string",
- "unlimited": true
}, - "projects": {
- "id": "string",
- "name": "string",
- "total": {
- "amount": 0,
- "currency_code": "string",
- "currency_symbol": "string",
- "formatted": "string"
}
}, - "pending_verification": "credit-card",
- "model": "string",
- "days_remaining": 0
}, - "invoiced": true
}
Returns a paginated list of all the projects associated with a given UUID. The returned information includes each project's respective endpoint and management console URLs, as well as information about the project owner.
filter[owner] | string The UUID of the owner. |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "count": 0,
- "projects": [
- {
- "id": "string",
- "endpoint": "string",
- "ui": "string",
- "subscription_id": 0,
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}
}
], - "_links": {
- "self": {
- "title": "string",
- "href": "string"
}, - "previous": {
- "title": "string",
- "href": "string"
}, - "next": {
- "title": "string",
- "href": "string"
}
}
}
Returns a project's endpoint and management console URLs, as well as information about the project owner.
projectId required | string The ID of the project |
{- "id": "string",
- "endpoint": "string",
- "ui": "string",
- "subscription_id": 0,
- "owner": "534359f7-5407-4b19-ba92-c71c370022a5",
- "owner_info": {
- "type": "string",
- "username": "string",
- "display_name": "string"
}
}
Retrieves the list of available regions for the specified organization.
organization_id required | string The ID of the organization. |
filter[zone] | string Geographical zone of the region. |
filter[available] | string Value 0 displays only disabled regions. Value 1 displays only enabled ones. |
filter[private] | string Value 0 displays only public regions. Value 1 displays only private ones. |
page | integer <int32> Page to be displayed. Defaults to 1. |
{- "items": [
- {
- "id": "string",
- "label": "string",
- "zone": "string",
- "selection_label": "string",
- "project_label": "string",
- "timezone": "string",
- "available": true,
- "private": true,
- "endpoint": "string",
- "provider": {
- "name": "string",
- "logo": "string"
}, - "datacenter": {
- "name": "string",
- "label": "string",
- "location": "string"
}, - "environmental_impact": {
- "zone": "string",
- "carbon_intensity": "string",
- "green": true
}
}
]
}
These endpoints can be used to retrieve and manipulate project-level
settings. Only the initialize
property can be set by end users. It is used
to initialize a project from an existing Git repository.
The other properties can only be set by a privileged user.
Retrieve the global settings for a project.
projectId required | string |
{- "initialize": { },
- "product_name": "string",
- "product_code": "string",
- "ui_uri_template": "string",
- "variables_prefix": "string",
- "bot_email": "string",
- "application_config_file": "string",
- "project_config_dir": "string",
- "use_drupal_defaults": true,
- "use_legacy_subdomains": true,
- "development_service_size": "2XL",
- "development_application_size": "2XL",
- "enable_certificate_provisioning": true,
- "certificate_style": "ecdsa",
- "certificate_renewal_activity": true,
- "development_domain_template": "string",
- "enable_state_api_deployments": true,
- "temporary_disk_size": 0,
- "local_disk_size": 0,
- "cron_minimum_interval": 0,
- "cron_maximum_jitter": 0,
- "concurrency_limits": {
- "property1": 0,
- "property2": 0
}, - "flexible_build_cache": true,
- "strict_configuration": true,
- "has_sleepy_crons": true,
- "crons_in_git": true,
- "custom_error_template": "string",
- "app_error_page_template": "string",
- "environment_name_strategy": "hash",
- "data_retention": {
- "property1": {
- "max_backups": 0,
- "default_config": {
- "manual_count": 0,
- "schedule": [
- {
- "interval": "string",
- "count": 0
}
]
}
}, - "property2": {
- "max_backups": 0,
- "default_config": {
- "manual_count": 0,
- "schedule": [
- {
- "interval": "string",
- "count": 0
}
]
}
}
}, - "enable_codesource_integration_push": true,
- "enforce_mfa": true,
- "systemd": true,
- "router_gen2": true,
- "build_resources": {
- "cpu": 0,
- "memory": 0
}, - "outbound_restrictions_default_policy": "allow",
- "self_upgrade": true,
- "additional_hosts": {
- "property1": "string",
- "property2": "string"
}, - "max_allowed_routes": 0,
- "max_allowed_redirects_paths": 0,
- "enable_incremental_backups": true,
- "sizing_api_enabled": true,
- "enable_cache_grace_period": true,
- "enable_zero_downtime_deployments": true,
- "enable_admin_agent": true,
- "certifier_url": "string",
- "centralized_permissions": true,
- "glue_server_max_request_size": 0,
- "persistent_endpoints_ssh": true,
- "persistent_endpoints_ssl_certificates": true,
- "enable_disk_health_monitoring": true,
- "enable_paused_environments": true,
- "enable_unified_configuration": true,
- "enable_routes_tracing": true,
- "image_deployment_validation": true,
- "support_generic_images": true,
- "enable_github_app_token_exchange": true,
- "enable_marefs": true,
- "continuous_profiling": {
- "supported_runtimes": [
- "string"
]
}
}
Update one or more project-level settings.
projectId required | string |
initialize | object (Initialization key) |
object or null (Data retention configuration) | |
object (Build Resources) |
{- "initialize": { },
- "data_retention": {
- "property1": {
- "max_backups": 0,
- "default_config": {
- "manual_count": 0,
- "schedule": [
- {
- "interval": "string",
- "count": 0
}
]
}
}, - "property2": {
- "max_backups": 0,
- "default_config": {
- "manual_count": 0,
- "schedule": [
- {
- "interval": "string",
- "count": 0
}
]
}
}
}, - "build_resources": {
- "cpu": 0,
- "memory": 0
}
}
{- "status": "string",
- "code": 0
}
Platform.sh is capable of deploying the production environments of projects in multiple topologies: both in clusters of containers, and as dedicated virtual machines. This is an internal API that can only be used by privileged users.
The deployment target information for the project.
projectId required | string |
[- {
- "type": "dedicated",
- "name": "string",
- "deploy_host": "string",
- "deploy_port": 0,
- "ssh_host": "string",
- "hosts": [
- {
- "id": "string",
- "type": "core",
- "services": [
- "string"
]
}
], - "auto_mounts": true,
- "excluded_mounts": [
- "string"
], - "enforced_mounts": { },
- "auto_crons": true,
- "auto_nginx": true,
- "maintenance_mode": true,
- "guardrails_phase": 0
}
]
Set the deployment target information for a project.
projectId required | string |
type required | string (The type of the deployment target.) Enum: "dedicated" "enterprise" "local" |
name required | string (The name of the deployment target.) |
enforced_mounts | object (Mounts which are always injected into pushed (e.g. enforce /var/log to be a local mount).) |
{- "type": "dedicated",
- "name": "string",
- "enforced_mounts": { }
}
{- "status": "string",
- "code": 0
}
Get a single deployment target configuration of a project.
projectId required | string |
deploymentTargetConfigurationId required | string |
{- "type": "dedicated",
- "name": "string",
- "deploy_host": "string",
- "deploy_port": 0,
- "ssh_host": "string",
- "hosts": [
- {
- "id": "string",
- "type": "core",
- "services": [
- "string"
]
}
], - "auto_mounts": true,
- "excluded_mounts": [
- "string"
], - "enforced_mounts": { },
- "auto_crons": true,
- "auto_nginx": true,
- "maintenance_mode": true,
- "guardrails_phase": 0
}
projectId required | string |
deploymentTargetConfigurationId required | string |
type required | string (The type of the deployment target.) Enum: "dedicated" "enterprise" "local" |
name required | string (The name of the deployment target.) |
enforced_mounts | object (Mounts which are always injected into pushed (e.g. enforce /var/log to be a local mount).) |
{- "type": "dedicated",
- "name": "string",
- "enforced_mounts": { }
}
{- "status": "string",
- "code": 0
}
Delete a single deployment target configuration associated with a specific project.
projectId required | string |
deploymentTargetConfigurationId required | string |
{- "status": "string",
- "code": 0
}
These endpoints can be used to retrieve low-level information and interact with the core component of Platform.sh infrastructure.
This is an internal API that can only be used by privileged users.