Projects
Here you can interact with the projects you have available within Belltastic that are accessible with your API token.
Subscription Required
The Projects API requires an active paid subscription, such as Standard or Business.
subscription required
List ProjectsGET {base_uri}/projects
List all projects available to your API token. This may include projects from different teams, if you belong to them.
Example response
GET https://belltastic.com/api/v1/projects
[
{
"id": 1,
"name": "Default",
"default": false,
"hmac_required": false,
"team_id": 1,
"created_at": "2021-12-03T10:32:52+00:00",
"updated_at": "2021-12-04T11:35:56+00:00",
"deleted_at": null
},
{
"id": 2,
"name": "Second project",
"default": true,
"hmac_required": false,
"team_id": 1,
"created_at": "2021-12-03T10:32:52+00:00",
"updated_at": "2021-12-03T10:32:52+00:00",
"deleted_at": null
}
]
subscription required
Get projectGET {base_uri}/project/{id}
Get a single project.
Example response
GET https://belltastic.com/api/v1/project/1
{
"id": 1,
"name": "Default",
"default": false,
"hmac_required": false,
"team_id": 1,
"created_at": "2021-12-03T10:32:52+00:00",
"updated_at": "2021-12-03T10:32:52+00:00",
"deleted_at": null
}
subscription required
Create projectPOST {base_uri}/projects
Create a new project with the given data.
Attribute | Type | Required? | Description |
---|---|---|---|
team_id | int | Yes | Projects belong to teams, not users. A valid team_id is required |
name | string | Yes | Name of the project. Up to 255 characters |
default | boolean | No | Whether this project should open up by default when logging in to Belltastic |
hmac_required | boolean | No | Whether HMAC authorization by the Notification Component is required for this project |
Example response (201 - Created)
Request: POST https://belltastic.com/api/v1/projects
with body
{
"team_id": 1,
"name": "Second project",
"hmac_required": true
}
Response:
{
"message": "Project created.",
"data": {
"id": 2,
"team_id": 1,
"name": "Second project",
"default": false,
"hmac_required": true,
"created_at": "2021-12-11T13:13:09+00:00",
"updated_at": "2021-12-11T13:13:09+00:00",
"deleted_at": null
}
}
Example response (422 - Validation errors)
Request: POST https://belltastic.com/api/v1/projects
with body
{
"team_id": 54234,
"name": "Second project"
}
Response:
{
"message": "The given data was invalid.",
"errors": {
"team_id": [
"You cannot create projects for this team."
]
}
}
subscription required
Update projectPUT {base_uri}/project/{id}
Update a project with new data.
Attribute | Type | Description |
---|---|---|
name | string | Name of the project. Up to 255 characters |
default | boolean | Whether this project should open up by default when logging in to Belltastic |
hmac_required | boolean | Whether HMAC authorization by the Notification Component is required for this project |
Example response
PUT https://belltastic.com/api/v1/project/1
with data {"name":"New name"}
{
"message": "Project updated.",
"data": {
"id": 1,
"name": "New name",
"default": false,
"hmac_required": false,
"team_id": 1,
"created_at": "2021-12-03T10:32:52+00:00",
"updated_at": "2021-12-04T11:35:56+00:00",
"deleted_at": null
}
}
subscription required
Archive projectPUT {base_uri}/project/{id}/archive
Archive the project (soft-delete). The data, including its users and notifications will remain on our servers for retrieval later if needed. The notification component will stop working for this project.
If the project was archived already, it will do nothing - the deleted_at
timestamp will not be updated.
Example response
PUT https://belltastic.com/api/v1/project/1/archive
{
"message": "Project archived.",
"data": {
"id": 1,
"name": "Default",
"default": false,
"hmac_required": false,
"team_id": 1,
"created_at": "2021-12-03T10:32:52+00:00",
"updated_at": "2021-12-04T11:35:56+00:00",
"deleted_at": "2021-12-04T11:35:56+00:00"
}
}
subscription required
Destroy projectDELETE {base_uri}/project/{id}
Permanently delete the project and all of its related users and notifications.
DANGER
Data cannot be retrieved after the project has been destroyed as it will be permanently deleted from all our servers.
Example response
DELETE https://belltastic.com/api/v1/project/1
{
"message": "Project deleted."
}