
## Application data

`GET /v1/apps/:id`

Returns a single Bitrix24 account application by identifier.

## Parameters

| Parameter | Type | Required | Description |
|----------|-----|:-----:|---------|
| `id` (path) | string | Yes | Application identifier. List: `GET /v1/apps` |

## Examples

### curl — personal key

```bash
curl https://vibecode.bitrix24.com/v1/apps/YOUR_APP_ID \
  -H "X-Api-Key: YOUR_API_KEY"
```

### curl — OAuth application

```bash
curl https://vibecode.bitrix24.com/v1/apps/YOUR_APP_ID \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"
```

### JavaScript — personal key

```javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/apps/YOUR_APP_ID', {
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
console.log('Application:', data)
```

### JavaScript — OAuth application

```javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/apps/YOUR_APP_ID', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})
const { data } = await res.json()
```

## Response fields

| Field | Type | Description |
|------|-----|---------|
| `success` | boolean | Always `true` on success |
| `data.id` | string | Application identifier |
| `data.title` | string | Name |
| `data.description` | string \| null | Description |
| `data.scopes` | string[] | Bitrix24 scopes assigned to the application key |
| `data.handlerUrl` | string | Handler address on the platform side. Details — [Applications](/docs/apps) |
| `data.appUrl` | string \| null | Application address on Black Hole. Before publishing — `null` |
| `data.redirectUris` | string[] | Allowed OAuth return addresses |
| `data.bitrixClientId` | string \| null | OAuth client identifier in the Bitrix24 account |
| `data.prefix` | string | Application key prefix |
| `data.suffix` | string | Last characters of the application key |
| `data.authorId` | string | Application author identifier |
| `data.portalId` | string | Bitrix24 portal identifier |
| `data.createdAt` | string | Creation date, ISO 8601 |
| `data.updatedAt` | string | Modification date, ISO 8601 |
| `data.placements` | string[] | Bound [placements](/docs/apps/placements). Before publishing — empty array |
| `data.catalogStatus` | string | Catalog status: `PRIVATE` / `PUBLISHED` / `UNPUBLISHED`. The reliable publication signal |
| `data.publishedAt` | string \| null | Publication date, ISO 8601. `null` if the application was never published |

## Response example

```json
{
  "success": true,
  "data": {
    "id": "33c4d5e6-f7a8-49b0-1234-5c6d7e8f9012",
    "title": "Sales dashboard",
    "description": "Deal analytics in the CRM card",
    "scopes": ["crm", "user", "placement"],
    "handlerUrl": "https://vibecode.bitrix24.com/v1/bitrix-handler",
    "appUrl": "https://app-abc12345.vibecode.bitrix24.com",
    "redirectUris": [
      "https://vibecode.bitrix24.com/oauth/complete",
      "http://localhost"
    ],
    "bitrixClientId": "local.7c3d4e5f6a7b80.55556666",
    "prefix": "vibe_app_local_7c3",
    "suffix": "6666",
    "authorId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "portalId": "8b1f0e2a-3c4d-5e6f-7a8b-9c0d1e2f3a4b",
    "createdAt": "2026-06-24T09:12:45.781Z",
    "updatedAt": "2026-06-24T09:12:45.781Z",
    "placements": [],
    "catalogStatus": "PRIVATE",
    "publishedAt": null
  }
}
```

## Error response example

404 — application not found:

```json
{
  "success": false,
  "error": {
    "code": "APP_NOT_FOUND",
    "message": "Application not found"
  }
}
```

## Errors

| HTTP | Code | Description |
|------|-----|---------|
| 404 | `APP_NOT_FOUND` | An application with the given `id` does not belong to the key's portal or does not exist |
| 401 | `MISSING_API_KEY` | The `X-Api-Key` header was not passed |

Full list of common API errors — [Errors](/docs/errors).

## Known specifics

- A deleted application returns `404 APP_NOT_FOUND` — the same code as a never-existing identifier. The response cannot distinguish "deleted" from "never existed".

## See also

- [Applications](/docs/apps)
- [List applications](/docs/apps/list)
- [Update application](/docs/apps/update)
- [Delete application](/docs/apps/delete)
- [Scopes](/docs/scopes)
