Project Policy API
The project policy API is only available for Golem Cloud.
Project policies describe a set of actions one account can perform when it was associated with a grant for a project.
The following actions can be used in the projectActions fields of this API:
ViewComponent
grants read access to a componentCreateComponent
allows creating new components in a projectUpdateComponent
allows uploading new versions for existing components in a projectDeleteComponent
allows deleting components from a projectViewWorker
allows querying existing workers of a component belonging to the projectCreateWorker
allows launching new workers of a component in the projectUpdateWorker
allows manipulating existing workers of a component belonging to the projectDeleteWorker
allows deleting workers of a component belonging to the projectViewProjectGrants
allows listing the existing grants of the projectCreateProjectGrants
allows creating new grants for the projectDeleteProjectGrants
allows deleting existing grants of the project
Get a project policy
Path | Method | Protected |
---|---|---|
/v2/project-policies/{project_policy_id} | GET | Yes |
Returns a given project policy by it's ID. Project policy identifiers are used in project grants.
Example Response JSON
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"projectActions": {
"actions": ["ViewComponent"]
}
}
Create a project policy
Path | Method | Protected |
---|---|---|
/v2/project-policies | POST | Yes |
Creates a new project policy and returns the object describing it, including the newly created policy's id.
Example Request JSON
{
"name": "string",
"projectActions": {
"actions": ["ViewComponent"]
}
}
Example Response JSON
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"projectActions": {
"actions": ["ViewComponent"]
}
}
Project Policy API Errors
Status Code | Description | Body |
---|---|---|
400 | Invalid request, returning with a list of issues detected in the request | {"errors":["string"]} |
401 | Unauthorized | {"error":"string"} |
404 | Project not found | {"error":"string"} |
500 | Internal server error | {"error":"string"} |