...
Програми повинні перенаправляти користувачів до цього методу, щоб виконати процес реєстрації пацієнтів і користувачів.
Після створення особи та її користувача в системі метод перенаправляється на сторінку «Прийняти скоупи», щоб отримати oAuth Code Grant (який пізніше обмінюється на Access Token).
Користувач побачить відтворену сторінку реєстрації, структура якої відрізняється списком запитаних скоупів і заходів безпеки, застосованих командою DevOps.
З міркувань безпеки встановіть X-Frame-Options:deny заголовок буде налаштовано на заборону відкриття цієї сторінки в iframe.
Специфікація
Вхідні параметри
Вхідні параметри | M/O | Тип | Опис |
---|---|---|---|
client_id | M | String | Ідентифікатор клієнта видається після реєстрації юридичної особи або PIS. Використовується для визначення контексту MSP/Pharmacy/PIS |
redirect_uri | M | String | URL-адреса, на яку буде перенаправлено користувача після реєстрації та аутентифікації. Ця URL-адреса отримає код і state параметри в рядку запиту |
scope | M | String | Список областей, необхідних для бізнес-логіки програми, розділених пробілом. Різні форми входу будуть показані залежно від скоупів, які ви запитували |
user_data | M | Base 64 String | Закодований підписаний вміст із реєстраційними даними особи |
Сервісна логіка
Відобразити сторінку реєстрації на основі вхідних параметрів і параметрів конфігурації:
перейдіть до сторінки «Схвалити відомості про особу».
Помилки бізнес-логіки
Помилки | Переклад |
---|---|
message: user_data missing | Відсутні дані для реєстрації |
message: Invalid signed content. | Підписаний контент некоректний або прострочений. |
message: JWT is invalid. | Підписаний контент некоректний або прострочений. |
message: Registration person and person that sign should be the same | Дані з підпису не співпадають з даними для реєстрації |
message: Input name doesn't match name from digital signature | Дані з підпису не співпадають з даними для реєстрації |
message: expected true but got false for attribute patient_signed | Користувач повинен погодитись з підписанням даних |
message: expected true but got false for attribute process_disclosure_data_consent | Користувач повинен погодитись з передачею даних в ЄСОЗ |
message: Incorrect person age for such an action. | Для вказаного віку персони авторизація в системі не дозволена |
message: Submitted document type is not allowed | Некоректний тип документу |
message: Document that proves person`s legal capacity must be submitted | Для вказаного віку персони необхідно вказати документи підтверджуючі дієздатність особи |
message: Only OTP authentication method can be created for person | Некоректно вказаний метод автентифікації |
message: Invalid verification code | Некоректний код підтвердження |
message: User is blocked. | Користувача заблоковано |
message: Person not found. | Не вдалося ідентифікувати персону. Зверніться до служби підтримки |
message: Incorrect person age for such an action. | Для вказаного віку персони самореєстрація в системі не дозволена |
Помилки перевірки схеми
Відсутність потрібних налаштувань
...
Обовʼязковий атрибут "%{property}" відсутній
На вході | Переклад |
---|---|
$.person.first_name | Імʼя |
$.person.last_name | Прізвище |
$.person.second_name | По-батькові |
$.person.birth_date | Дата народження |
$.person.birth_country | Країна народження |
$.person.birth_settlement | Місце народження |
$.person.gender | Стать |
$.person.email | Адреса електронної пошти |
$.person.no_tax_id | Ознака відсутності ІПН |
$.person.secret | Кодове слово |
$.person.documents | Документи |
$.person.documents.[0].type | Тип документу |
$.person.documents.[0].number | Номер документу |
$.person.documents.[0].issued_by | Місце видачі документу |
$.person.documents.[0].issued_at | Дата видачі документу |
$.person.documents.[0].expiration_date | Дата закінчення дії документу |
$.person.addresses | Адреса |
$.person.addresses.[0].type | Тип адреси |
$.person.addresses.[0].country | Країна прописки (проживання) |
$.person.addresses.[0].area | Область прописки (проживання) |
$.person.addresses.[0].region | Район прописки (проживання) |
$.person.addresses.[0].settlement | Населений пункт прописки (проживання) |
$.person.addresses.[0].settlement_type | Тип населеного пункту прописки (проживання) |
$.person.addresses.[0].settlement_id | Ідентифікатор населеного пункту прописки (проживання) |
$.person.addresses.[0].street_type | Тип вулиці прописки (проживання) |
$.person.addresses.[0].street | Вулиця прописки (проживання) |
$.person.addresses.[0].building | Будинок прописки (проживання) |
$.person.addresses.[0].apartment | Квартира прописки (проживання) |
$.person.addresses.[0].zip | Поштовий індекс прописки (проживання) |
$.person.phones | Телефони |
$.person.phones.[0].type | Тип телефону |
$.person.phones.[0].number | Номер телефону |
$.person.authentication_methods | Методи автентифікації |
$.person.authentication_methods.[0].type | Тип методу автентифікації |
$.person.authentication_methods.[0].value | Значення методу автентифікації |
$.person.authentication_methods.[0].alias | Найменування методу автентифікації |
$.person.preferred_way_communication | Бажаний спосіб комунікації |
$.person.emergency_contact | Контактна особа для екстрених випадків |
$.person.emergency_contact.first_name | Імʼя контактної особи для екстрених випадків |
$.person.emergency_contact.last_name | Прізвище контактної особи для екстрених випадків |
$.person.emergency_contact.second_name | По-батькові контактної особи для екстрених випадків |
$.person.emergency_contact.phones | Телефони контактної особи для екстрених випадків |
$.person.emergency_contact.phones.[0].type | Тип телефону контактної особи для екстрених випадків |
$.person.emergency_contact.phones.[0].number | Номер телефону контактної особи для екстрених випадків |
$.person.patient_signed | Ознака підпису запиту пацієнтом |
$.person.process_disclosure_data_consent | Згода з передачею даних в ЕСОЗ |
Кількість змінних в переліку
...
Code Block |
---|
{ "error": { "invalid": [ { "entry": "$.person.documents", "entry_type": "json_data_property", "rules": [ { "description": "expected a minimum of 1 items but got 0", "params": { "actual": 0, "min": 1 }, "raw_description": "expected a minimum of %{min} items but got %{actual}", "rule": "length" } ] } ], "message": "Validation failed. You can find validators description at our API Manifest: http://docs.apimanifest.apiary.io/#introduction/interacting-with-api/errors.", "type": "validation_failed" }, "meta": { "code": 422, "request_id": "8d6c1272-40fd-47a4-b9d5-d74db649fbca#15905", "type": "object", "url": "http://api-svc.il/api/pis/confidant/sign-up_validation" } } |
Переклад
На вході | Переклад |
---|---|
$.person.documents | Мінімум один документ особи що реєструється має бути вказаний |
$.person.addresses | Мінімум одна адреса має бути вказана |
$.person.phones | Мінімум один телефон має бути вказаний |
$.person.authentication_methods | Мінімум один метод автентифікації має бути вказаний |
$.person.emergency_contact.phones | Мінімум один телефон контактної особи для екстрених випадків має бути вказаний |