# Integrations (Coinbax Core API)

> Source: https://developers.coinbax.com/reference/coinbax-core/integrations/
> Staging base URL: https://core-staging.coinbax.com/api/v1

Third-party integrations

## List workspace integrations

`GET /workspaces/{id}/integrations`

- Auth: Bearer token
- Operation ID: `listWorkspaceIntegrations`

Get all integrations enabled for a workspace.

**Requires:** Workspace access

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes | Workspace ID |

### Example request

```bash
curl https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Integrations retrieved successfully

```json
{
  "success": true,
  "meta": {
    "timestamp": "2026-02-24T12:00:00.000Z",
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 150,
      "totalPages": 8
    }
  },
  "data": [
    {
      "id": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
      "workspaceId": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
      "integrationId": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
      "status": "active",
      "errorMessage": "string",
      "lastValidatedAt": "2026-01-15T12:00:00.000Z",
      "metadata": {},
      "createdAt": "2026-01-15T12:00:00.000Z",
      "updatedAt": "2026-01-15T12:00:00.000Z"
    }
  ]
}
```

**401** Unauthorized - missing or invalid authentication

**404** Resource not found

**500** Internal server error

---

## Enable integration

`POST /workspaces/{id}/integrations`

- Auth: Bearer token
- Operation ID: `enableWorkspaceIntegration`

Enable an integration for a workspace.

**Requires:** Workspace access

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes | Workspace ID |

### Request body

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `integrationId` | string (uuid) | yes | ID of the integration to enable |
| `config` | object | yes | Integration-specific configuration (API keys, etc.) |

```json
{
  "integrationId": "550e8400-e29b-41d4-a716-446655440000",
  "config": {
    "apiKey": "integration_api_key"
  }
}
```

### Example request

```bash
curl -X POST https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "integrationId": "550e8400-e29b-41d4-a716-446655440000",
  "config": {
    "apiKey": "integration_api_key"
  }
}'
```

### Responses

**200** Integration enabled successfully

```json
{
  "success": true,
  "meta": {
    "timestamp": "2026-02-24T12:00:00.000Z",
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 150,
      "totalPages": 8
    }
  },
  "data": {
    "id": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
    "workspaceId": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
    "integrationId": "9f8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
    "status": "active",
    "errorMessage": "string",
    "lastValidatedAt": "2026-01-15T12:00:00.000Z",
    "metadata": {},
    "createdAt": "2026-01-15T12:00:00.000Z",
    "updatedAt": "2026-01-15T12:00:00.000Z"
  }
}
```

**400** Bad request - validation error

**401** Unauthorized - missing or invalid authentication

**404** Resource not found

**500** Internal server error

---

## Get integration details

`GET /workspaces/{id}/integrations/{integrationId}`

- Auth: Bearer token
- Operation ID: `getWorkspaceIntegration`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |
| `integrationId` | path | string (uuid) | yes |  |

### Example request

```bash
curl https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/<integrationId> \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Integration retrieved

---

## Remove integration

`DELETE /workspaces/{id}/integrations/{integrationId}`

- Auth: Bearer token
- Operation ID: `deleteWorkspaceIntegration`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |
| `integrationId` | path | string (uuid) | yes |  |

### Example request

```bash
curl -X DELETE https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/<integrationId> \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**204** Removed

---

## Update integration

`PATCH /workspaces/{id}/integrations/{integrationId}`

- Auth: Bearer token
- Operation ID: `updateWorkspaceIntegration`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |
| `integrationId` | path | string (uuid) | yes |  |

### Example request

```bash
curl -X PATCH https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/<integrationId> \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Updated

---

## Disable integration

`POST /workspaces/{id}/integrations/{integrationId}/disable`

- Auth: Bearer token
- Operation ID: `disableWorkspaceIntegration`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |
| `integrationId` | path | string (uuid) | yes |  |

### Example request

```bash
curl -X POST https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/<integrationId>/disable \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Disabled

---

## Get integration status

`GET /workspaces/{id}/integrations/{integrationId}/status`

- Auth: Bearer token
- Operation ID: `getWorkspaceIntegrationStatus`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |
| `integrationId` | path | string (uuid) | yes |  |

### Example request

```bash
curl https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/<integrationId>/status \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Status retrieved

---

## Validate integration config

`POST /workspaces/{id}/integrations/validate`

- Auth: Bearer token
- Operation ID: `validateWorkspaceIntegration`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |

### Example request

```bash
curl -X POST https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/validate \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**200** Validated

---

## Enable integration with config

`POST /workspaces/{id}/integrations/with-config`

- Auth: Bearer token
- Operation ID: `enableWorkspaceIntegrationWithConfig`

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string (uuid) | yes |  |

### Example request

```bash
curl -X POST https://core-staging.coinbax.com/api/v1/workspaces/<id>/integrations/with-config \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

### Responses

**201** Enabled
