Management API - Apps
Overview
This API allows you to manage applications within a workspace. All endpoints require API key authentication. You can create an API key in the API Keys section on the Dashboard. (Company > API Keys)
Authentication
All endpoints require an API key to be provided in the request headers.
X-Api-Key: your_api_key_here
Endpoints
List Apps
Retrieves a paginated list of applications in a workspace.
GET https://dashboard.bitlabs.ai/api/public/v1/workspaces/{workspaceUuid}/apps
URL Parameters
Parameter | Type | Description |
---|---|---|
workspaceUuid | string | UUID of the workspace |
Query Parameters
Parameter | Type | Description |
---|---|---|
page | number | Page number |
per_page | number | Number of items per page (default: 100) |
Response
[
[
{
"uuid": "PtOwyJHpO7GBKfd1QFCqU",
"iconImageUrl": null,
"createdAt": "2020-11-18T19:31:39.000Z",
"updatedAt": "2025-07-10T10:03:51.000Z"
},
{
"uuid": "-UkFSUzACT3D-3LEj_GWf",
"iconImageUrl": null,
"createdAt": "2021-04-29T11:38:53.000Z",
"updatedAt": "2024-01-24T06:06:20.000Z"
}
]
]
Pagination
The response includes pagination headers to navigate through the list of applications. Use the X-Total-Count
header to
determine the total number of applications and the Link
header for first, prev, next and last page URLs. The Link
header will only include the links that are relevant to the current page.
// Response Headers:
// Total number of applications
X-Total-Count: 4
// Pagination links
Link: <https://dashboard.bitlabs.ai/api/public/v1/workspaces/BI4cZjjpnsEQF_2gCBV9e/apps?page=2&per_page=2>; rel="next", <https://dashboard.bitlabs.ai/api/public/v1/workspaces/BI4cZjjpnsEQF_2gCBV9e/apps?page=2&per_page=2>; rel="last"
Create App
Creates a new application in the workspace.
POST https://dashboard.bitlabs.ai/api/public/v1/workspaces/{workspaceUuid}/apps
URL Parameters
Parameter | Type | Description |
---|---|---|
workspaceUuid | string | UUID of the workspace |
Request Body
{
"name": "foo"
}
Validation Requirements
Field | Type | Required | Description |
---|---|---|---|
name | string | Yes | Name of the app |
Response
{
"uuid": "AfQFbSyBckKV9PDK2Ybr9"
}
Error Responses
403
- App limit reached
Get App
Retrieves detailed information about a specific application.
GET https://dashboard.bitlabs.ai/api/public/v1/workspaces/{workspaceUuid}/apps/{appUuid}
URL Parameters
Parameter | Type | Description |
---|---|---|
workspaceUuid | string | UUID of the workspace |
appUuid | string | UUID of the application |
Response
{
"uuid": "PtOwyJHpO7GBKfd1QFCqU",
"iconImageUrl": null,
"createdAt": "2020-11-18T19:31:39.000Z",
"updatedAt": "2025-07-10T10:03:51.000Z",
"config": [
{
"internalIdentifier": "general.name",
"value": "foo"
}
]
}
Update App Configuration
Updates configuration settings for an application.
PATCH https://dashboard.bitlabs.ai/api/public/v1/workspaces/{workspaceUuid}/apps/{appUuid}
URL Parameters
Parameter | Type | Description |
---|---|---|
workspaceUuid | string | UUID of the workspace |
appUuid | string | UUID of the application |
Request Body
[
{
"internalIdentifier": "general.name",
"value": "bar"
}
]
Validation Requirements
The request body must be an array of configuration objects. Each configuration object must include:
Field | Type | Required | Description |
---|---|---|---|
internalIdentifier | string | Yes | Internal identifier for the configuration setting |
value | string | int | float | boolean | null | Yes | Configuration value. Can be either a primitive value or an array of given primitives. It has to comply with our internal validation rules which are defined per configuration item. |
List of internalIdentifiers
Identifier | Values | Description |
---|---|---|
general.name | String | The name of the app. |
general.link | String | Link to the platform. |
app.behaviour.default_tab | TAB_SURVEYS , TAB_OFFERS , TAB_GAMING , TAB_MAGIC_RECEIPTS , TAB_CASHBACK | The default tab. |
app.features.offers.enabled | Boolean | Enable Games & Offers. |
app.features.offers.show_offers_tab | Boolean | Show the offers tab on the offerwall. |
app.features.offers.show_gaming_tab | Boolean | Show the games tab on the offerwall. |
app.features.surveys.enabled | Boolean | Enable Surveys. |
app.features.magic_receipts.enabled | Boolean | Enable Magic Receipts. |
app.features.cashback.enabled | Boolean | Enable Cashback. |
general.currency.symbol.is_image | Boolean | Allow image URL to be used for currency icon. |
general.currency.symbol.content | String | Currency content. Either a image URL or a currency name, e.g. {value} Points . |
general.currency.factor | Float | The currency factor that will be multiplied with the USD value. Define how much 1 USD is worth in your currency. |
general.currency.floor_decimal | Boolean | When true, the rewards will be floored. |
app.visual.hide_reward_value | Boolean | Hides the rewards on the offerwall. |
Response
null
Error Responses
403
- Identifier not allowed
Delete App
Permanently deletes an application from the workspace.
DELETE https://dashboard.bitlabs.ai/api/public/v1/workspaces/{workspaceUuid}/apps/{appUuid}
URL Parameters
Parameter | Type | Description |
---|---|---|
workspaceUuid | string | UUID of the workspace |
appUuid | string | UUID of the application |
Response
null
Error Handling
All endpoints may return the following error responses:
401
- Unauthorized (invalid API key)403
- Forbidden (insufficient permissions)404
- Not Found (resource doesn't exist)422
- Unprocessable Entity (validation errors)500
- Internal Server Error
Error responses include a message and may include additional data for debugging.
Updated 9 days ago