Ссылка скопирована

Триггерные рассылки

Этот раздел применим ко всем расширениям МедФлекса. Триггерные рассылки реализованы при помощи HTTP-сервиса MR_Appointment.

Методы

Получение списка приёмов

Используется через определённые промежутки времени, чтобы получить данные всех приёмов за определённый период.

Тип запроса GET

Формат тела запроса Нет

URL /hs/mr_appointment/AppointmentRequest/appointment/?filial_ids=aaaaaaaa-aaaa-aaaa-aaaaaaaaaaaaaaaa&start_date=YYYY-MM-ddT00%3A00&end_date=YYYY-MM-ddT00%3A00

  • Filial_ids — список УИД филиалов, из которых необходимо получить приёмы. Обязательный.
  • Start_date — начало периода, за который должны выгружаться приёмы. Обязательный.
  • End_date — окончание периода, за который должны выгружаться приёмы. Обязательный.
  • Проверка на попадание приёма в период выполняется по дате его исполнения, а не по дате создания.

Тело запроса Нет

Формат ответов:

[
{
"filial_id": "f679444a-22b7-11df-8618-002618dcef2c",
"appointments": [
{
"ext_id": "0386a7e5-6d1b-11f0-8149-96d03872bb29",
"mis_dt_created_local": "2025-07-30 13:02",
"mis_dt_updated_local": null,
"dt_start_local": "2025-07-30 09:00",
"duration": 30,
"status": "Запланирована",
"source": "",
"patient": {
"ext_id": "a023056f-3ef7-11de-8086-001485c0d477",
"first_name": "Иван",
"last_name": "Иванов",
"patronymic": "Иванович",
"mobile_phone": "89181112233",
"birthday": "2000-11-04",
"gender": "M"
},
"doctor": {
"ext_id": "1301dd68-6922-11ef-8119-96d03872bb29",
"first_name": "Пётр",
"last_name": "Петров",
"patronymic": "Петрович",
"speciality_name": "Терапия"
},
"services": [
{
"ext_id": "d2be09b9-f644-11e9-82c3-40167e631f2e",
"name": "Здоровье в динамике"
}
],
"cabinet": null
}
}
]
  • Filial_id — УИД филиала, к которому относится приём.
  • Appointments может содержать любое количество структур.
  • Appointments:ext_id — УИД документа приёма.
  • Appointments:mis_dt_created_local — Дата создания документа приёма в часовом поясе клиники YYYY-MM-dd HH:mm.
  • Appointments:mis_dt_updated_local — Дата изменения документа приёма в часовом поясе клиники YYYY-MM-dd HH:mm.
  • Appointments:dt_start_local — дата начала приёма в часовом поясе клиники YYYY-MM-dd HH:mm.
  • Appointments:duration — продолжительность приёма.
  • Appointments:status — статус записи.
  • Appointments:source — источник записи.
  • Appointments:services — список услуг, может содержать любое количество структур.
  • Appointments:cabinet — кабинет, в котором будет проводиться приём.
  • Patient:ext_id — УИД пациента.
  • Patient:first_name — имя пациента.
  • Patient:last_name — фамилия пациента.
  • Patient:patronymic — отчество пациента.
  • Patient:mobile_phone — мобильный телефон пациента.
  • Patient:birthday — дата рождения пациента YYYY-MM-dd.
  • Patient:gender — пол пациента, M или F.
  • Doctor:ext_id — УИД врача.
  • Doctor:first_name — имя врача.
  • Doctor:last_name — фамилия врача.
  • Doctor:patronymic — отчество врача.
  • Doctor:speciality_name — специализация врача.
  • Services:ext_id — УИД услуги.
  • Services:name — наименование услуги.

Получение записей журнала регистрации

Метод предназначен для получения записей журнала регистрации, которые связаны с триггерной рассылкой.

Тип запроса GET

Формат тела запроса Нет

URL /hs/mr_appointment/AppointmentRequest/get_logs/?start_date=YYYY-MM-ddT00%3A00&end_date=YYYY-MM-ddT00%3A00&entries=500

  • Start_date — начало периода, за который должны выгружаться записи. Обязательный.
  • End_date — окончание периода, за который должны выгружаться записи. Обязательный.
  • Entries — количество записей, которые необходимо выгрузить. По умолчанию выгружается 500.

Тело запроса Нет

Формат ответов:

[
{
"Статус": "Неуспешно",
"Пользователь": "Управляющий",
"ДатаВремя": "2025-08-07T15:54:33",
"Сообщение": "[ОшибкаВоВремяВыполненияВстроенногоЯзыка]\nпо причине:\nОшибка работы с Интернет: Превышен таймаут\n[ОшибкаСети]"
}
]
  • Массив может содержать любое количество записей.
  • Статус — результат взаимодействия с МедФлекс, успешно ли выполнен запрос или нет.
  • Пользователь — каким пользователем была выполнена запись в журнал.
  • ДатаВремя — дата-время, когда была выполнена запись.
  • Сообщение — сообщение, переданное в запись.

Инкрементальная отправка приёмов

  • Этот метод выполняется из 1С для отправки данных приёмов на сервер МедФлекса. Он автоматически вызывается при добавлении, изменении или отмене приёмов. Заполненность отправляемых данных завист от параметра «Асинхронная выгрузка приёмов для партнёрских интеграций МедФлекса» в настройках обмена с МедФлексом. Если этот параметр установлен в значении «Истина», то данные будут отправляться в полном объёме. Если он установлен в значении «Ложь», то отправляться будет только информация о времени и месте приёма. Данные отправки (IP, порт и токен) указываются в тех же настройках.

Тип запроса POST

Формат тела запроса JSON

URL api/v1/appointments/upload/

Тело запроса

Может содержать [1;10] записей в массиве.

При полном наборе данных:

[
{
"duration": 30,
"services": [
{
"ext_id": "239329aa-a8c8-11ef-8129-96d03872bb29",
"name": "Психопатологическое обследование"
}
],
"doctor": {
"speciality_name": "Врач стоматолог-терапевт",
"patronymic": "Иванов",
"first_name": "Иван",
"last_name": "Иванович",
"ext_id": "4237a6ca-1072-4200-b5f4-454e28d572bc"
},
"ext_id": "6bdc41ad-b779-4810-875a-8241f69e47db",
"status": "Прием не подтвержден",
"dt_start_local": "2025-09-22 14:00:00",
"cabinet": null,
"source": "",
"patient": {
"gender": "M",
"birthday": "2019-09-13",
"mobile_phone": "79242020478",
"patronymic": "Иванович",
"first_name": "Иван",
"last_name": "Иванов",
"ext_id": "a671caea-1f02-49f4-81b8-56b289f7ebed"
},
"mis_dt_updated_local": null,
"filial_id": "bc091729-29d9-11ed-bbdd-005056833d76",
"mis_dt_created_local": "2025-09-10 09:30:37"
}
]
  • Duration — длительность приёма.
  • Services — массив, содержащий набор услуг приёма.
  • Services:ext_id — УИД услуги.
  • Services:name — наименование услуги.
  • Doctor содержит информацию о враче.
  • Doctor:speciality_name — специализация врача.
  • Doctor:patronymic — отчество врача.
  • Doctor:first_name — имя врача.
  • Doctor:last_name — фамилия врача.
  • Doctor:ext_id — УИД врача.
  • Ext_id — УИД документа приёма.
  • Status — статус приёма.
  • Dt_start_local — дата-время начала приёма в часовом поясе клиники YYYY-MM-dd HH:mm:ss.
  • Cabinet — кабинет, в котором будет проводиться приём. Строка или null.
  • Source — источник создания записи.
  • Patient содержит информацию о пациенте.
  • Patient:gender — пол пациента. M или F.
  • Patient:birthday — дата рождения пациента YYYY-MM-dd.
  • Patient:mobile_phone — мобильный телефон пациента.
  • Patient:patronymic — отчество пациента.
  • Patient:first_name — имя пациента.
  • Patient:last_name — фамилия пациента.
  • Patient:ext_id — УИД пациента.
  • Mis_dt_updated_local — дата обновления данных записи. Временно не используется, null.
  • Filial_id — УИД филиала, в котором будет проводиться приём.
  • Mis_dt_created_local — дата создания записи в часовом поясе клиники YYYY-MM-dd HH:mm:ss.

При неполном наборе данных:

[
{
"duration": 30,
"services": [
{
"ext_id": "239329aa-a8c8-11ef-8129-96d03872bb29",
"name": "Психопатологическое обследование"
}
],
"doctor": {
"speciality_name": "Врач стоматолог-терапевт",
"patronymic": "Иванов",
"first_name": "Иван",
"last_name": "Иванович",
"ext_id": "4237a6ca-1072-4200-b5f4-454e28d572bc"
},
"ext_id": "2cc408e1-c0eb-453b-9b07-2948433e01b1",
"status": "Прием не подтвержден",
"dt_start_local": "2025-09-22 10:00:00"
}
]

Формат ответов:

  • Данные успешно отправлены:

Тело в ответе не приходит, только статус 204.

  • Не удалось пройти авторизацию:
{"detail":"Неверный токен"}

Код статуса: 401.