
## Get a page

`GET /v1/pages/:id`

Returns a single page by identifier. Deleted pages are not returned by this endpoint — such a request returns `404 ENTITY_NOT_FOUND`.

## Parameters

| Parameter | Type | Req. | Description |
|----------|-----|:-----:|---------|
| `id` (path) | number | yes | Page identifier |
| `scope` (query) | string | no | Internal landing area: `KNOWLEDGE` / `GROUP` / `MAINPAGE`. Specify it if the page belongs to the corresponding area; otherwise `404 ENTITY_NOT_FOUND` is returned. Example: `GET /v1/pages/9?scope=KNOWLEDGE` |
| `select` (query) | string | no | Field selection: `?select=id,title`. The `id` field is always returned |

## Examples

### curl — personal key

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

### curl — OAuth application

```bash
curl "https://vibecode.bitrix24.com/v1/pages/9" \
  -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/pages/9', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
console.log('Page:', data.title, '— site:', data.siteId)
```

### JavaScript — OAuth application

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

const { success, data } = await res.json()
```

## Response fields

| Field | Type | Description |
|------|-----|---------|
| `id` | number | Page identifier |
| `title` | string | Page title |
| `code` | string | Symbolic code of the page |
| `siteId` | number | Site identifier |
| `active` | boolean | Whether the page is active |
| `description` | string \| null | Arbitrary description |
| `createdById` | number | Identifier of the employee who created it |
| `dateCreate` | datetime | Creation date. Bitrix24 format `DD.MM.YYYY HH:MM:SS` (not ISO 8601) |
| `dateModify` | datetime | Last modification date. Bitrix24 format `DD.MM.YYYY HH:MM:SS` (not ISO 8601) |

> **Date format — locale-dependent, NOT ISO 8601.** Bitrix24 returns `dateCreate`/`dateModify` as a string in the local format, and **the specific template depends on the Bitrix24 account's regional settings**: in the RU locale it is `DD.MM.YYYY HH:MM:SS` (`30.12.2021 12:30:52`), in the EN locale it is `MM/DD/YYYY hh:mm:ss am/pm` (`04/22/2020 02:39:17 pm`). Vibecode returns the Bitrix24 value as is, without normalizing to ISO. `new Date(value)` returns `Invalid Date` or silently swaps day/month — **do not parse with a fixed template and do not trust `new Date()`**. Rely on the regional settings of the specific Bitrix24 account.

## Response example

```json
{
  "success": true,
  "data": {
    "id": 9,
    "title": "Page migration test",
    "code": "change1",
    "siteId": 3,
    "active": true,
    "description": null,
    "createdById": 1,
    "dateCreate": "30.12.2021 12:30:52",
    "dateModify": "30.12.2021 12:30:53"
  }
}
```

## Error response example

404 — the page is not found:

```json
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "landingPage 999999999 not found"
  }
}
```

## Errors

| HTTP | Code | Description |
|------|-----|---------|
| 404 | `ENTITY_NOT_FOUND` | A page with this ID is not found, deleted, or not accessible to the user |
| 403 | `SCOPE_DENIED` | The API key does not have the `landing` scope |
| 401 | `TOKEN_MISSING` | The API key has no configured tokens |

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

## See also

- [List pages](/docs/entities/pages/list) — get several pages with filters
- [Update a page](/docs/entities/pages/update) — change fields
- [Delete a page](/docs/entities/pages/delete) — delete by ID
- [Limits and optimization](/docs/optimization) — rate limits
