---
# System prepended metadata

title: Интеграция ЛИС - Порядок работы

---

# Интеграция ЛИС - Порядок работы

1. Получение каталога ЛМИ
2. Запрос направлений.
   1. Запрос списка направлений.
   2. Получение информации о пациенте.
   3. Запрос направления по ID со штрих кода.
3. Создание ресурсов.
   1. Создание результатов для тестов
   2. Создание результатов для услуг
   3. Создание результатов для тестов и услуг одним запросом
4. Изменение статуса направления;
5. Просмотр справочников;
6. Сохранение печатной формы;
7. Простановка даты взятия материала.

*Примечание:*
baseUrl - адрес сервиса, авторизация [Basic](https://docs.aidbox.app/auth-betta/basic-auth#basic-auth) (Client.id - имя пользователя/системы, Client.secret - пароль)

## 1 Получение каталога ЛМИ

### 1.1. Запрос всех исследований

Получить `id`  организации

`GET https://{baseUrl}/fhir/Organization?identifier=urn:identity:oid:Organization|{performer_oid}`

, где `performer_oid` - OID организации

Структура ответа:

```json
{
    "resourceType": "Bundle",
    "entry": [
        {
            "resource": {
                "address": [
                  "address": [
                    {
                    "text": "428028, Чувашская Республика - Чувашия, Чебоксары г, Тракторостроителей пр-кт, дом № 46",
                    "type": "postal",
                    "extension": [
                      {
                      "url": "urn:extension:fias",
                      "valueString": "23453976-6192-4782-8bd5-205c3969648b"
                      },
                      {
                      "url": "urn:extension:regionId",
                      "valueString": "21"
                      }
                    ]
                    },
                    {
                    "city": "г. Чебоксары",
                    "type": "physical",
                    "state": "Чувашская Республика",
                    "extension": [
                      {
                      "url": "http://hl7.org/fhir/StructureDefinition/geolocation",
                      "extension": [
                        {
                        "url": "latitude",
                        "valueDecimal": 56.099089
                        },
                        {
                        "url": "longitude",
                        "valueDecimal": 47.300369
                        }
                      ]
                      },
                      {
                      "url": "urn:extension:regionId",
                      "valueString": "21"
                      },
                      {
                      "url": "urn:extension:fias",
                      "valueString": "23453976-6192-4782-8bd5-205c3969648b"
                      },
                      {
                      "url": "urn:extension:fiasVersion",
                      "valueString": "335"
                      },
                      {
                      "url": "urn:extension:territoryCode",
                      "valueString": "97"
                      }
                    ],
                    "line": [
                      "пр-кт. Тракторостроителей, дом 46"
                    ],
                    "text": "Чувашская Республика - г. Чебоксары, пр-кт. Тракторостроителей, дом 46"
                    }
                ],
                "meta": {
                    "lastUpdated": "2021-09-27T13:16:20.331493Z",
                    "createdAt": "2019-11-05T07:21:57.083458Z",
                    "versionId": "122656761"
                },
                "name": "Бюджетное учреждение Чувашской Республики \"Городская клиническая больница №1\" Министерства здравоохранения Чувашской Республики",
                "resourceType": "Organization",
                "alias": [
                    "БУ \"Городская клиническая больница №1\" Минздрава Чувашии",
                    "БУ ГКБ1"
                ],
                "active": true,
                "id": "ab241ca8-ff79-4330-9ca4-c80e6324b1ad",
                "identifier": [
                    ...
                    {
                        "value": "1.2.643.5.1.13.13.12.2.21.1525",
                        "system": "urn:identity:oid:Organization"
                    }
                    ...
                ],
                "telecom": [
                    {
                        "value": "(8352) 64-87-01",
                        "system": "phone"
                    },
                    {
                        "value": "(8352) 64-87-01",
                        "system": "fax"
                    }
                ],
                "contact": [
                    ...
                ]
            },
            "fullUrl": "/Organization/ab241ca8-ff79-4330-9ca4-c80e6324b1ad",
            "link": [
                {
                    "relation": "self",
                    "url": "/Organization/ab241ca8-ff79-4330-9ca4-c80e6324b1ad"
                }
            ]
        }
    ]
}
```

`GET https://{baseUrl}/fhir/PlanDefinition?type=KDL,BAK&status=active&mainOrganization={org-id}`

, где `org-id` - id организации.

Структура ответа:

```json
{
    "resourceType": "Bundle",
    "type": "searchset",
    "meta": {
        "versionId": "83974313"
    },
    "entry": [
        {
            "resource": {
                "date": "2021-09-20T14:09:14",
                "meta": {
                    "lastUpdated": "2021-10-01T11:15:42.095963Z",
                    "versionId": "123876269",
                    "extension": [
                        {
                            "url": "ex:createdAt",
                            "valueInstant": "2021-09-20T11:09:06.008267Z"
                        }
                    ]
                },
                "name": "СОЭ-скорость оседания эритроцитов крови",
                "type": {
                    "coding": [
                        {
                            "code": "subspeciesLi",
                            "system": "urn:CodeSystem:plandefinition-subspeciesLi"
                        },
                        {
                            "code": "ESLI.TYPE_LI.2",
                            "system": "urn:CodeSystem:plandefinition-li-type",
                            "display": "Гематологическое исследование"
                        },
                        {
                            "code": "KDL",
                            "system": "urn:Lab-catalog-type",
                            "display": "КДЛ"
                        },
                        {
                            "id": "LabResearchGroup.101",
                            "code": "101",
                            "system": "urn:CodeSystem:LabResearchGroup",
                            "display": "Гематологические исследования"
                        }
                    ]
                },
                "resourceType": "PlanDefinition",
                "title": "СОЭ-скорость оседания эритроцитов крови",
                "extension": [
                    {
                        "url": "urn:extension:subscribers",
                        "valueReference": {
                            "reference": "List/8a13240d-77a8-42e2-86d7-ce8b0869c5af"
                        }
                    },
                    {
                        "url": "urn:extension:mainOrganization",
                        "valueReference": {
                            "display": "БУ \"Городская клиническая больница №1\" Минздрава Чувашии",
                            "reference": "Organization/ab241ca8-ff79-4330-9ca4-c80e6324b1ad"
                        }
                    }
                ],
                "status": "active",
                "id": "0b2c4df6-7de9-4006-87f9-42a47f92220f",
                "action": [
                    {
                        "definitionCanonical": "PlanDefinition/ed2a4992-2e2c-4766-9879-1f60ace8a3d2"
                    },
                    {
                        "definitionCanonical": "ActivityDefinition/f60149e3-a511-4ed5-81e4-eed3c7ba4f08"
                    }
                ]
            },
            "fullUrl": "/PlanDefinition/0b2c4df6-7de9-4006-87f9-42a47f92220f",
            "link": [
                {
                    "relation": "self",
                    "url": "/PlanDefinition/0b2c4df6-7de9-4006-87f9-42a47f92220f"
                }
            ]
        }
    ]
}
```

### 1.2. Запрос услуг исследования

Каждое исследование содержит массив ссылок на услуги:

```json
{
    ...
    "action": [
        {
            "definitionCanonical": "ActivityDefinition/f60149e3-a511-4ed5-81e4-eed3c7ba4f08"
        }
    ]
    ...
}
```

Для каждого элемента массива направляется запрос услуги:  
`GET https://{baseUrl}/fhir/{definitionCanonical}`

### 1.3. Запрос тестов

Каждая услуга содержит массив ссылок на тесты:

```json
{
    ...
    "observationResultRequirement": [
        {
        "reference": "ObservationDefinition/b143c1ca-5f4d-4963-86b2-b9d8176bb09f"
        },
        {
        "reference": "ObservationDefinition/efaa8bb5-a364-4495-a005-51f0e04b8338"
        }
    ]
    ...
}
```

Для каждого элемента массива направляется запрос теста:  
`GET https://{baseUrl}/fhir/{observationResultRequirement.*.reference}`

### 1.4. Получение идентификатора каталога

id каталога можно получить по запросу
`/$get-pd-by-mo?org-oid={org-oid}&service={research-code}&type={catalog-type}`
`org-oid` = oid организации
`research-code` = код услуги в соответствии со справочником 1.2.643.5.1.13.13.11.1070 )
`catalog-type` = KDL

пример:
`/$get-pd-by-mo?org-oid=1.2.643.5.1.13.13.12.2.21.1525&service=A26.08.008.001&type=KDL`

## 2. Запрос направлений

### 2.1. Запрос списка  направлений

`GET https://{baseUrl}/fhir/ServiceRequest?_count=20&page=1&category=urn:CodeSystem:servicerequest-category%7CReferral-LMI&category:not=urn:CodeSystem:lab-group%7C501,urn:CodeSystem:lab-group%7C13&status=active&performer:identifier=urn:identity:oid:Organization|{performer_oid}`

, где `performer_oid` - OID организации

[Документация запроса](https://docs.aidbox.app/basic-concepts/search-1)

[Описание FHIR ресурса ServiceRequest](https://www.hl7.org/fhir/servicerequest.html)

Структура ответа:

```json
{
    "resourceType": "Bundle",
    "type": "searchset",
    "meta": {
        "versionId": "73272778"
    },
    "entry": [
        {
            "resource": {
                "category": [
                    {
                        "text": "Направление на лабораторное исследование",
                        "coding": [
                            {
                                "code": "Referral-LMI",
                                "system": "urn:CodeSystem:servicerequest-category",
                                "display": "Направление на лабораторное исследование"
                            },
                            {
                                "code": "101",
                                "system": "urn:CodeSystem:lab-group",
                                "display": "Гематологические исследования"
                            }
                        ]
                    }
                ],
                "instantiatesCanonical": [
                    "PlanDefinition/122e1-1cf8-44d8-826e-03bea9397166_92"
                ],
                "meta": {
                    "lastUpdated": "2021-10-06T06:44:17.118377Z",
                    "versionId": "124640259",
                    "extension": [
                        {
                            "url": "ex:createdAt",
                            "valueInstant": "2021-10-06T06:44:17.118377Z"
                        }
                    ]
                },
                "encounter": {
                    "type": "Encounter",
                    "identifier": {
                        "value": "dda29190-5060-491b-8362-c63e5b5dd509",
                        "system": "urn:source:rmis:Encounter"
                    },
                    "display": "История болезни № 8"
                },
                "specimen": [
                    {
                        "type": "Specimen",
                        "identifier": {
                            "value": "57a9c3b0-be75-4c2d-96d8-ce3e0f3168c1",
                            "system": "urn:source:rmis:Specimen"
                        }
                    }
                ],
                "reasonCode": [
                    {
                        "coding": [
                            {
                                "code": "B90.0",
                                "system": "urn:CodeSystem:icd-10",
                                "display": "Отдаленные последствия туберкулеза центр. нервной системы"
                            }
                        ]
                    }
                ],
                "authoredOn": "2021-10-06T09:44:00",
                "resourceType": "ServiceRequest",
                "extension": [
                    {
                        "url": "urn:extension:requestedOrganizationDepartment",
                        "valueReference": {
                            "type": "Organization",
                            "identifier": {
                                "value": "12",
                                "system": "urn:source:rmis:Organization"
                            },
                            "display": "Кардиологическое"
                        }
                    },
                    {
                        "url": "urn:extension:requestedOrganization",
                        "valueReference": {
                            "type": "Organization",
                            "identifier": {
                                "value": "1.2.643.5.1.13.13.12.2.21.1525",
                                "system": "urn:identity:oid:Organization"
                            },
                            "display": "БУ \"Городская клиническая больница №1\" Минздрава Чувашии"
                        }
                    },
                    {
                        "url": "urn:extension:paymentType",
                        "valueCoding": {
                            "code": "1",
                            "system": "urn:CodeSystem:paymentType",
                            "display": "ОМС"
                        }
                    },
                    {
                        "url": "urn:extension:performerInfo",
                        "extension": [
                            {
                                "url": "urn:extension:performerInfo.performedBy",
                                "valueReference": {
                                    "type": "PractitionerRole",
                                    "identifier": {
                                        "system": "urn:source:rmis:PractitionerRole"
                                    }
                                }
                            },
                            {
                                "url": "urn:extension:performerInfo.requestStatus",
                                "valueCode": "new"
                            },
                            {
                                "url": "urn:extension:performerInfo.requestActionHistory",
                                "extension": [
                                    {
                                        "url": "urn:extension:performerInfo.requestActionHistory.date",
                                        "valueDateTime": "2021-10-06T09:44:25.677"
                                    },
                                    {
                                        "url": "urn:extension:performerInfo.requestActionHistory.action",
                                        "valueString": "new"
                                    }
                                ]
                            },
                            {
                                "url": "urn:extension:performerInfo.requestActionHistory",
                                "extension": [
                                    {
                                        "url": "urn:extension:performerInfo.requestActionHistory.date",
                                        "valueDateTime": "2021-10-06T06:44:02.710"
                                    },
                                    {
                                        "url": "urn:extension:performerInfo.requestActionHistory.action",
                                        "valueString": "new"
                                    }
                                ]
                            }
                        ]
                    }
                ],
                "requester": {
                    "type": "PractitionerRole",
                    "identifier": {
                        "value": "112-901-495 23_1.2.643.5.1.13.13.12.2.21.1506.0.94504_2019-08-19_34",
                        "system": "urn:identity:mis-rmis:PractitionerRole"
                    },
                    "display": "КАРДИОЛОГ ВРАЧ МИХАЙЛОВНА; Врач-кардиолог"
                },
                "priority": "routine",
                "status": "active",
                "id": "c02cf7f2-45fb-4588-a1c2-60c0486ba7d3",
                "code": {
                    "coding": [
                        {
                            "code": "pak_87e122e1-1cf8-44d8-826e-03bea9397166_92",
                            "system": "urn:CodeSystem:rmis:ServiceRequest",
                            "display": "Исследования на Treponema pallidum"
                        },
                        {
                            "code": "A26.06.082.002",
                            "system": "urn:CodeSystem:Nomenclature-medical-services",
                            "display": "Исследования на Treponema pallidum",
                            "version": "1"
                        }
                    ]
                },
                "identifier": [
                    {
                        "value": "57a9c3b0-be75-4c2d-96d8-ce3e0f3168c1",
                        "system": "urn:source:rmis:ServiceRequest"
                    },
                    {
                        "value": "0521000330",
                        "system": "urn:identity:Serial:ServiceRequest"
                    }
                ],
                "intent": "original-order",
                "orderDetail": [
                    {
                        "coding": [
                            {
                                "code": "A26.06.082.002",
                                "system": "urn:CodeSystem:Nomenclature-medical-services",
                                "display": "Определение антител к бледной трепонеме (Treponema pallidum) иммуноферментным методом (ИФА) в крови"
                            },
                            {
                                "code": "1048131",
                                "system": "urn:CodeSystem:Laboratory-Research-and-Test",
                                "display": "Антитела IgМ к Treponema pallidum, обнаружение в сыворотке крови"
                            }
                        ]
                    }
                ],
                "locationCode": [
                    {
                        "coding": [
                            {
                                "code": "1",
                                "system": "urn:CodeSystem:mis.medical-help-type",
                                "display": "Стационарная медицинская помощь"
                            }
                        ]
                    }
                ],
                "subject": {
                    "type": "Patient",
                    "identifier": {
                        "value": "2149330841000226",
                        "system": "urn:identity:enp:Patient"
                    },
                    "display": "УВАРОВ ВАЛЕНТИН ВАЛЕРЬЯНОВИЧ, 08.10.1966"
                },
                "performer": [
                    {
                        "type": "Organization",
                        "identifier": {
                            "value": "1.2.643.5.1.13.13.12.2.21.1521",
                            "system": "urn:identity:oid:Organization"
                        },
                        "display": "БУ \"Республиканский кожно-венерологический диспансер\" Минздрава Чувашии"
                    }
                ]
            },
            "fullUrl": "/ServiceRequest/c02cf7f2-45fb-4588-a1c2-60c0486ba7d3",
            "link": [
                {
                    "relation": "self",
                    "url": "/ServiceRequest/c02cf7f2-45fb-4588-a1c2-60c0486ba7d3"
                }
            ]
        }
    ]
}
```

### 2.2. Получение информации о пациенте

Для каждого полученного направления для получения подробной информации о пациенте направляется запрос:

`GET https://{baseUrl}/ServiceRequest?identifier={identifier-system}|{identifier-value}&_with=subject:logical`

, где `identifier-system` и `identifier-value` соответствующие значения `identifier` направления.
Например:

```json
{
  "identifier": [
    {
      "value": "57a9c3b0-be75-4c2d-96d8-ce3e0f3168c1",
      "system": "urn:source:rmis:ServiceRequest"
    }
  ]
}
```

Структура ответа:

```json
{
  "include-queries": [
    [
      "SELECT * FROM \"patient\" WHERE (knife_extract_text(resource,$$[[\"identifier\",\"value\"]]$$) && ARRAY['2150030845000133'] AND (knife_extract_text(resource,$$[[\"identifier\",{\"system\":\"urn:identity:insurance-gov:Patient\"},\"value\"]]$$) && ARRAY['2150030845000133'])) LIMIT ?",
      1000
    ]
  ],
  "type": "searchset",
  "resourceType": "Bundle",
  "total": 1,
  "entry": [
    {
      "resource": {
        "resourceType": "ServiceRequest",
        "subject": {
          "identifier": {
            "system": "urn:identity:enp:Patient",
            "value": "patient-enp"
          }
        }
        ...
      }
    },
    {
      "resource": {
        "resourceType": "Patient",
        "identifier": [
          {
            "system": "urn:identity:enp:Patient",
            "value": "patient-enp"
          }
          ...
        ]
        ...
      }
    }
  ]
}
```

### 2.3. Запрос направления по ID со штрих кода

`GET https://{baseUrl}/fhir/ServiceRequest?identifier=urn:identity:Serial:ServiceRequest|{serial}`

, где `serial` - ID в штрих коде, например `1226`  
*Примечание: ответ аналогичен п.1.1, в котором будет одно направление*

## 3. Создание ресурсов

Создание ресурсов происходит через интеграционную очередь методом `POST https://{baseUrl}/IntegrationQueue`.
Структура запросов:

```json
{
    "clientId": "{clientId}",
    "method": "{POST, PUT}", // POST - создание, PUT - обновление
    "format": "fhir",
    "payload": {
		... // содержимое ресурса описано ниже
	}
}
```

[Документация запроса](https://docs.aidbox.app/api-1/api/crud-1/fhir-and-aidbox-crud)

Далее запрос помещается в очередь и ему устанавливается `status` и записывается сообщение о проведенной операции `message`.

Перечень статусов:

| статус        | описание                       |
| ------------- | ------------------------------ |
| pending       | в ожидании                     |
| synced        | успешно обработан              |
| errored       | произошла ошибка               |
| unprocessable | запрос не может быть обработан |

При создании ссылки на пациента можно использовать следующие идентификаторы:

| **urn:identity:<code>:Patient** | **Описание**                                  |
| :------------------------------ | :-------------------------------------------- |
| passport-rf                     | Паспорт РФ                                    |
| passport-ussr                   | Паспорт гражданина СССР                       |
| birth-certificate               | Свидетельство о рождении                      |
| snils                           | СНИЛС                                         |
| insurance-gov                   | Полис ОМС                                     |
| insurance-gov-legacy            | Полис ОМС старого образца                     |
| insurance-gov-temporary         | Временно свидетельство ДПФС (временный полис) |
| enp                             | ЕНП (единый номер полиса)                     |
| mvd                             | Удостоверение личности офицера                |

### 3.1. Создание материала

[Описание FHIR ресурса Specimen](https://www.hl7.org/fhir/specimen.html)

```json
{
  "type": {
    "coding": [
      {
        "system": "urn:oid:1.2.643.5.1.13.13.11.1081",
        "version": "1" // значение в соответствии со справочником 1.2.643.5.1.13.13.11.1081
      }
    ]
  },
  "subject": {
    "type": "Patient",
    "display": "Фамилия Имя Отчество, дд.мм.гггг",
    "identifier": {
      "value": "единый номер полиса",
      "system": "urn:identity:enp:Patient"
    }
  },
  "identifier": [
    {
      "value": "{external_id}", // уникальный идентификатор созданного ресурса в системе-источнике
      "system": "urn:source:{clientId}:Specimen"
    }
  ]
}
```

### 3.2. Создание результата для теста

[Описание FHIR ресурса Observation](https://www.hl7.org/fhir/observation.html)

Содержимое запроса:

```json
{
    "identifier": [
    {
      "system": "urn:source:{clientId}:Observation",
      "value": "{external_id}"
    }
  ],
  "code": {
    "coding": [
      {
        "code": "1021518", // Код ФСЛИ
        "system": "urn:CodeSystem:Laboratory-Research-and-Test",
        "display": "Лейкоциты, количество в объёме в осадка мочи по методу Нечипоренко"
      }
    ]
  },
  "status": "final",
  "subject": {
    "resourceType": "Patient",
    "display": "ТЕСТОВ ТЕСТ ТЕСТОВИЧ 05.11.1966",
    "id": "044e1ee9-a325-4cd1-b753-181da69c952f"
  },
  "interpretation": [
    {
      "coding": [
        {
          "code": "N",
          "system": "urn:oid:1.2.643.5.1.13.13.11.1381",
          "display": "Нормальный"
        }
      ]
    }
  ],
  "valueQuantity": {
    "code": "136",
    "unit": "1/мл",
    "value": 3,
    "system": "urn:CodeSystem:Measure-Unit"
  },
  "referenceRange": [
    {
      "age": {
        "low": {
          "value": 19
        },
        "high": {
          "value": 60
        }
      },
      "low": {
        "value": 2
      },
      "high": {
        "value": 15
      },
      "extension": [
        {
          "url": "urn:extension:qualifiedInterval.month",
          "valueRange": {
            "low": {
              "value": 1
            },
            "high": {
              "value": 5
            }
          }
        }
      ]
    }
  ],
  "resourceType": "Observation",
  "effectiveDateTime": "2020-09-01T15:40:42"
}
```

, где `external_id` - уникальный идентификатор созданного ресурса в системе-источнике

### 3.3. Создание результата для услуги

[Описание FHIR ресурса DiagnosticReport](https://www.hl7.org/fhir/diagnosticreport.html)

#### 3.3.1. Создание успешного результата

Структура запроса:

```json
{
  "identifier": [
    {
      "system": "urn:source:{clientId}:DiagnosticReport",
      "value": "{external_id}"
    }
  ],
  "category": [
    {
      "text": "Направление на лабораторное исследование",
      "coding": [
        {
          "code": "Referral-LMI",
          "system": "urn:CodeSystem:servicerequest-category",
          "display": "Направление на лабораторное исследование"
        },
        {
          "code": "102",
          "system": "urn:CodeSystem:lab-group",
          "display": "Химико-микроскопические исследования"
        }
      ]
    }
  ],
  "specimen": [
    {
      "type": "Specimen",
      // Ссылка на материал из направления
      "identifier": {
        "value": "1e26f7e3-6ffa-4fd4-b162-6a8db520c5a3",
        "system": "urn:source:{clientId}:Specimen"
      }
    }
  ],
  "resourceType": "DiagnosticReport",
  "status": "final",
  "result": [
    {
        // Ссылка на результат теста
        "id": "d30213f1-8d8f-436e-86d4-b9f75c782022",
        "resourceType": "Observation"
    },
  ],
  "code": {
    "coding": [
      {
        "code": "B03.016.014",
        "system": "urn:CodeSystem:Nomenclature-medical-services",
        "display": "Исследование мочи методом Нечипоренко"
      }
    ]
  },
  "basedOn": [
    {
      // Допустимо указать один из вариантов ссылки на ServiceRequest
      // Прямая ссылка
      "resourceType": "ServiceRequest",
      "id": "8ef08d35-129a-48e1-b3a2-929fcdb2f9ca",
      // Лолгическая ссылка
      "type": "ServiceRequest",
      "identifier": { // Идентификатор полученного направления
        "value": "1e26f7e3-6ffa-4fd4-b162-6a8db520c5a3",
        "system": "urn:source:rmis:ServiceRequest" 
      }
    }
  ],
  "subject": {
    "type": "Patient",
    "identifier": {
      "value": "<patient-enp>",
      "system": "urn:identity:<code>:Patient" 
    }
  },
  "presentedForm": [ // Данные файла печатной формы (см. п.5)
    {
      "attachment": {
        "url": "/storage/download/<filename>",
        "size": "<filesize>",
        "title": "Печатная форма для результата ...",
        "contentType": "application/<type>"
      }
    }
  ],
  "effective": {
      "dateTime": "2021-09-29T10:18:34"
    },
  "performer": [
    {
      "type": "Organization",
      "identifier": {
          "value": "1.2.643.5.1.13.13.12.2.21.1521",
          "system": "urn:identity:oid:Organization"
      },
      "display": "БУ \"Республиканский кожно-венерологический диспанМинздрава Чувашии"
    },
    {
      "type": "Practitioner",
      "display": "<Ф.И.О. врача>",
      "identifier": {
        "value": "<СНИЛС врача>",
        "system": "urn:identity:snils:Doctor"
      }
    },
    {
      "type": "PractitionerRole",
      "display": "<Наименование должности по ФРМР>",
      "identifier": {
        "value": "<Код должности>",
        "system": "urn:CodeSystem:frmr.position"
      }
    }
  ]
}
```

, где `external_id` - уникальный идентификатор созданного ресурса в системе-источнике

#### 3.3.2 Создание результата с отказом

```json
{
  "resourceType": "DiagnosticReport",
  "conclusion": "причина отмены",
  "status": "cancelled",
  ... // Остальное содержимое результата из п.3.3.1
  ]
}
```

, где `external_id` - уникальный идентификатор созданного ресурса в системе-источнике

### 3.4. Отправка результатов тестов и услуг одним запросом

`POST https://{baseUrl}/`

[Документация запроса](https://docs.aidbox.app/basic-concepts/transaction)

[Описание FHIR ресурса Bundle](https://www.hl7.org/fhir/bundle.html)

*Примечание: если ресурс ссылается на другой ресурс в `Bundle`, то он должен следовать после ресурса на который ссылается.*

```json
{
  "entry": [
    {
      "request": {
        "method": "POST",
        "url": "/IntegrationQueue"
      },
      "resource": {
        ...
      }
    },
    {
      "request": {
        "method": "POST",
        "url": "/IntegrationQueue"
      },
      "resource": {
        ...
      }
    },
    ... // может быть множество
  ],
  "resourceType": "Bundle",
  "type": "transaction"
}
```

### 3.5. Отмена результатов

Поиск всех созданных результатов:

`GET https://{baseUrl}/fhir/{resourceType}?based-on={servicerequest_id}&identifier=urn:source:{clientId}:{resourceType}|`

Изменение отдельных полей в ресурсе:

`PATCH https://{baseUrl}/{resourceType}/{id}`

, где `resourceType` DiagnosticReport или Observation

[Документация запроса](https://docs.aidbox.app/basic-concepts/crud-1/patch)

Структура запроса:

```json
[
  {
    "op":"replace",
    "path": "/status",
    "value": "cancelled"
  }
]
```

### 3.6. Изменение статуса направления

`PATCH https://{baseUrl}/ServiceRequest/{Id}`

[Документация запроса](https://docs.aidbox.app/basic-concepts/crud-1/patch)

#### 3.6.1. При взятии в работу направления

Структура запроса:

```json
[
  {
    "op":"replace",
    "path": "/status",
    "value": "on-hold"
  }
]
```

#### 3.6.2. При выполнении направления

Структура запроса:

```json
[
  {
    "op":"replace",
    "path": "/status",
    "value": "completed"
  }
]
```

## 4. Просмотр справочников

### 4.1 Просмотр данных справочника

`GET https://{baseUrl}/fhir/CodeSystem?url={system}`

[Документация запроса](https://docs.aidbox.app/terminology/codesystem-and-concept)

Структура ответа  

`GET https://{baseUrl}/fhir/CodeSystem?url=urn:CodeSystem:Laboratory-Research-and-Test`

```json
{
  "resourceType": "Bundle",
  "type": "searchset",
  "meta": {
    "versionId": "74136549"
  },
  "entry": [
    {
      "resource": {
        "url": "urn:CodeSystem:Laboratory-Research-and-Test",
        "title": "Справочник лабораторных исследований и тестов",
        "status": "active",
        "content": "complete",
        "id": "Laboratory-Research-and-Test",
        "resourceType": "CodeSystem",
        "meta": {
          "lastUpdated": "2019-11-13T11:53:34.235172Z",
          "versionId": "66938109",
          "extension": [
            {
              "url": "ex:createdAt",
              "valueInstant": "2019-11-13T11:53:34.235172Z"
            }
          ]
        }
      },
      "fullUrl": "/CodeSystem/Laboratory-Research-and-Test",
      "link": [
        {
          "relation": "self",
          "url": "/CodeSystem/Laboratory-Research-and-Test"
        }
      ]
    }
  ],
  "total": 1,
  "link": [
    {
      "relation": "first",
      "url": "/CodeSystem?url=urn:CodeSystem:Laboratory-Research-and-Test&page=1"
    },
    {
      "relation": "self",
      "url": "/CodeSystem?url=urn:CodeSystem:Laboratory-Research-and-Test&page=1"
    }
  ]
}
```

### 4.2 Просмотр значений справочника

`GET https://{baseUrl}/fhir/Concept?system={system}`

[Документация запроса](https://docs.aidbox.app/terminology/concept)

Структура ответа  
`GET https://{baseUrl}/fhir/Concept?system=urn:CodeSystem:Laboratory-Research-and-Test`

```json
{
  "resourceType": "Bundle",
  "type": "searchset",
  "meta": {
    "versionId": "74143464"
  },
  "entry": [
    {
      "resource": {
        "code": "1104520",
        "system": "urn:CodeSystem:Laboratory-Research-and-Test",
        "display": "Амфетамин и его производные, массовое содержание в потожировых выделениях предварительным методом",
        "property": {
          "Характеристика аналита": "Массовое содержание",
          "Образец": {
            "id": "labMaterial.186",
            "code": "186",
            "system": "urn:CodeSystem:labMaterial",
            "display": "Потожировые выделения"
          },
          "Единица измерения": {
            "display": "мкг/г; нг/г"
          },
          "Код LOINC": "0",
          "Код НМУ": "",
          "Английское наименование": "Amphetamine [Mass/mass] in Sweat by Screen method",
          "Размерность": "Массовое содержание",
          "Уникальный идентификатор": "1104520",
          "Аналит": "Амфетамин и его производные",
          "Тип метода": "Предварительный",
          "Порядок сортировки": "1218231",
          "Тип шкалы измерения": "Количественная",
          "id": "1104520",
          "Краткое наименование": "Амфетамин и его производные, предварительным методом",
          "Статус": "Актуальный",
          "Синонимы": "",
          "Полное наименование": "Амфетамин и его производные, массовое содержание в потожировых выделениях предварительным методом",
          "Группа тестов": {
            "id": "LabResearchGroup.701",
            "code": "701",
            "system": "urn:CodeSystem:LabResearchGroup",
            "display": "Химико-токсикологические исследования"
          },
          "Временная характеристика образца": "Одномоментный"
        },
        "deprecated": false,
        "id": "Laboratory-Research-and-Test.1104520",
        "resourceType": "Concept",
        "meta": {
          "lastUpdated": "2020-09-03T16:21:05.451923Z",
          "createdAt": "2019-11-13T11:55:17.361650Z",
          "versionId": "73523059"
        }
      },
      "fullUrl": "/Concept/Laboratory-Research-and-Test.1104520",
      "link": [
        {
          "relation": "self",
          "url": "/Concept/Laboratory-Research-and-Test.1104520"
        }
      ]
    },
    ...
  ]
}
```

## 5. Сохранение печатной формы

### 5.1 Сохранение файла на файлохранилище

`POST https://{baseUrl}/storage/upload/`

Запрос:  

`Content-Type = "application/octet-stream"`

Ответ:

```json
{
    "url": "/storage/download/some-path"
}
```

### 5.2 Добавление данных о файле при создании результата

*`url` из ответа при сохранение файла п.5.1*

#### Фрагмент запроса создание результата для услуги

```json
  ...
  "presentedForm": [
    {
      "attachment": {
        "url": "/storage/download/<filename>",
        "size": "<filesize>",
        "title": "Печатная форма для результата ...",
        "contentType": "application/<type>"
      }
    }
  ]
  ...

```

**см. полная структуру запроса создание результата для услуги (п. 3.3)*

## 6. Простановка даты взятия материала

### 6.1. Получение ИД ресурса материала

Для получения ИД ресурса материала необходимо найти в направлении поле `specimen`:

Если поле имеет вид [Literal References](https://www.hl7.org/fhir/references.html#literal):

```json
  ...
  "specimen": [
    {
      "type": "Specimen",
      "reference": "Specimen/b01fc51d-91ba-4ec0-a035-e5686c3024cd"
    }
  ],
  ...
```

, то `Id` это `b01fc51d-91ba-4ec0-a035-e5686c3024cd`.

Если поле имеет вид [Logical References](https://www.hl7.org/fhir/references.html#logical):

```json
  ...
  "specimen": [
    {
      "type": "Specimen",
      "identifier": {
        "value": "34900f48-7c6c-47b0-9433-3260d909387d",
        "system": "urn:source:<clientId>:Specimen"
      }
    }
  ],
  ...
```

, то необходимо выполнить запрос поиска материала по идентификатору:

`GET https://{baseUrl}/fhir/Specimen?_elements=id&identifier={system}|{value}`

`GET https://{baseUrl}/fhir/Specimen?_elements=id&identifier=urn:source:<clientId>:Specimen|34900f48-7c6c-47b0-9433-3260d909387d`

[Документация запроса](https://docs.aidbox.app/basic-concepts/search-1)

Структура ответа

```json
{
  "entry": [
    {
      "resource": {
        "id": "b01fc51d-91ba-4ec0-a035-e5686c3024cd",
        "resourceType": "Specimen"
      }
    }
  ]
}
```

, где `Id` это `b01fc51d-91ba-4ec0-a035-e5686c3024cd` по пути `entry.0.resource.id`

### 6.2. Простановка даты взятия материала по ИД

`PATCH https://{baseUrl}/fhir/Specimen/{Id}?_method=merge-patch`

[Документация запроса](https://docs.aidbox.app/basic-concepts/crud-1/patch)

Структура запроса:

```json
{
  "receivedTime": "<Дата поступления материала в лабораторию>",
  "collection": {
    "collectedDateTime": "<Дата взятия материала>"
  }
}
```

*, где значение даты в формате `YYYY-MM-DDThh:mm:ss`(ISO 8601)*
