[{"data":1,"prerenderedAt":7},["ShallowReactive",2],{"docs-entities\u002Fitems\u002Fget":3,"docs-tabs-entities\u002Fitems\u002Fget":6},{"content":4,"lastmod":5},"\n## Get a smart process item\n\n`GET \u002Fv1\u002Fitems\u002F:entityTypeId\u002F:id`\n\nReturns a smart process item by ID.\n\nUse the `entityTypeId` field from [`GET \u002Fv1\u002Fsmart-processes`](\u002Fdocs\u002Fentities\u002Fsmart-processes\u002Flist) in the `\u002Fv1\u002Fitems\u002F:entityTypeId` path. The type record's internal `id` is a different identifier. For example, if a type is returned as `{ \"id\": 3, \"entityTypeId\": 174 }`, the path starts with `\u002Fv1\u002Fitems\u002F174`. Use the returned value rather than assuming all type IDs start at 1030.\n\n## Request parameters\n\n| Parameter | Type | Required | Description |\n|----------|-----|:-----:|---------|\n| `entityTypeId` (path) | number | yes | Smart process type ID. List: [`GET \u002Fv1\u002Fsmart-processes`](\u002Fdocs\u002Fentities\u002Fsmart-processes\u002Flist), the `entityTypeId` field |\n| `id` (path) | number | yes | Item ID. List: [`GET \u002Fv1\u002Fitems\u002F:entityTypeId`](\u002Fdocs\u002Fentities\u002Fitems\u002Flist) |\n| `select` (query) | string | no | Comma-separated response fields, for example `id,title,stageId`. Without it, every field is returned. Names come from [Item fields](\u002Fdocs\u002Fentities\u002Fitems\u002Ffields). An unknown name does not cause an error: the field is absent from the response, and `meta.warnings` carries an `UNKNOWN_SELECT_FIELD` warning |\n\n## Examples\n\nThe examples use `entityTypeId = 156` and `id = 783`; replace them with your values.\n\n### curl — personal key\n\n```bash\ncurl -X GET https:\u002F\u002Fvibecode.bitrix24.com\u002Fv1\u002Fitems\u002F156\u002F783 \\\n  -H \"X-Api-Key: YOUR_API_KEY\"\n```\n\n### curl — OAuth application\n\n```bash\ncurl -X GET https:\u002F\u002Fvibecode.bitrix24.com\u002Fv1\u002Fitems\u002F156\u002F783 \\\n  -H \"X-Api-Key: YOUR_APP_KEY\" \\\n  -H \"Authorization: Bearer USER_SESSION_TOKEN\"\n```\n\n### JavaScript — personal key\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.com\u002Fv1\u002Fitems\u002F156\u002F783', {\n  headers: { 'X-Api-Key': 'YOUR_API_KEY' },\n})\n\nconst { success, data } = await res.json()\nconsole.log('Item:', data.title)\n```\n\n### JavaScript — OAuth application\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.com\u002Fv1\u002Fitems\u002F156\u002F783', {\n  headers: {\n    'X-Api-Key': 'YOUR_APP_KEY',\n    'Authorization': 'Bearer USER_SESSION_TOKEN',\n  },\n})\n\nconst { success, data } = await res.json()\n```\n\n## Response fields\n\n| Field | Type | Description |\n|------|-----|---------|\n| `success` | boolean | `true` on success |\n| `data` | object | The smart process item. Full list of fields — [Item fields](\u002Fdocs\u002Fentities\u002Fitems\u002Ffields) |\n| `data.id` | number | Item ID |\n| `data.title` | string | Name |\n| `data.xmlId` | string | External code |\n| `data.stageId` | string | Stage |\n| `data.categoryId` | number | Pipeline ID |\n| `data.companyId` | number | Company ID |\n| `data.contactId` | number | Contact ID |\n| `data.contactIds` | array | Linked contacts |\n| `data.opportunity` | number | Amount |\n| `data.currencyId` | string | Currency |\n| `data.opened` | boolean | Available to everyone |\n| `data.assignedById` | number | Responsible person |\n| `data.createdBy` | number | Creator |\n| `data.updatedBy` | number | Last editor |\n| `data.movedBy` | number | Who moved the item to its current stage |\n| `data.createdTime` | datetime | Creation date |\n| `data.updatedTime` | datetime | Modification date |\n| `data.movedTime` | datetime | Stage change date |\n| `data.observers` | array | Observers |\n| `meta.warnings` | array | Warnings about unknown names in `select`, one per name: `code` is `UNKNOWN_SELECT_FIELD`, `message` is the text, `field` is the name. Present only when such names exist |\n\nWithout `select`, the response contains all item fields, including user fields (`ufCrmN_*`) and parent references (`parentIdN`).\n\n## Response example\n\n```json\n{\n  \"success\": true,\n  \"data\": {\n    \"id\": 783,\n    \"title\": \"Supply contract\",\n    \"xmlId\": null,\n    \"stageId\": \"DT156_41:NEW\",\n    \"categoryId\": 41,\n    \"companyId\": 15,\n    \"contactId\": 42,\n    \"contactIds\": [42],\n    \"opportunity\": 500000,\n    \"currencyId\": \"USD\",\n    \"opened\": true,\n    \"assignedById\": 1,\n    \"createdBy\": 1,\n    \"updatedBy\": 1,\n    \"movedBy\": 1,\n    \"createdTime\": \"2026-04-15T14:30:00+00:00\",\n    \"updatedTime\": \"2026-04-15T14:30:00+00:00\",\n    \"movedTime\": \"2026-04-15T14:30:00+00:00\",\n    \"observers\": [1, 5],\n    \"mycompanyId\": 0\n  }\n}\n```\n\n## Error response example\n\n404 — item not found:\n\n```json\n{\n  \"success\": false,\n  \"error\": {\n    \"code\": \"ENTITY_NOT_FOUND\",\n    \"message\": \"Item not found\"\n  }\n}\n```\n\n## Errors\n\n| HTTP | Code | Description |\n|------|-----|---------|\n| 400 | `INVALID_DYNAMIC_PARAM` | `entityTypeId` is not a positive integer or is reserved (1, 2, 3, 4, 7, 31) |\n| 404 | `ENTITY_NOT_FOUND` | An item with the specified ID was not found |\n| 403 | `SCOPE_DENIED` | The API key does not have the `crm` scope |\n| 401 | `TOKEN_MISSING` | The API key has no configured tokens |\n\nFull list of common API errors — [Errors](\u002Fdocs\u002Ferrors).\n\n## See also\n\n- [Working with files in CRM fields](\u002Fdocs\u002Frecipes\u002Fcrm-files)\n- [Item list](\u002Fdocs\u002Fentities\u002Fitems\u002Flist)\n- [Update a smart process item](\u002Fdocs\u002Fentities\u002Fitems\u002Fupdate)\n- [Item fields](\u002Fdocs\u002Fentities\u002Fitems\u002Ffields)\n- [Smart processes](\u002Fdocs\u002Fentities\u002Fsmart-processes)\n- [Entity API](\u002Fdocs\u002Fentity-api)\n","2026-10-29",{},1794739383628]