Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • LastName (пример: "Иванов") - фамилия персоны на русском языке, передается в системы бронирования (при условии, что они понимают кириллицу, например, "РЖД" или "Сирена-2000") при использовании документа типа "паспорт РФ" для поездок по России (обязательно для заполнения, тип строка);

  • FirstName (пример: "Иван")  - имя персоны на русском языке, передается в системы бронирования при использовании документа типа "паспорт РФ" для поездок по России (обязательно для заполнения, тип - строка);

  • SurName (пример: "Иванович")  - отчество персоны на русском языке, передается в системы бронирования при использовании документа типа "паспорт РФ" для поездок по России (не обязательно для заполнения, тип - строка);

  • LastNameLatin (пример: "Ivanov")  - фамилия персоны на английском языке, указывается так же, как в загранпаспорте.
    Передается в системы бронирования при использовании документов, в которых фамилия написана латиницей (например, загранпаспорт или паспорт другой страны).Также используется во всех иностранных системах бронирования, которые не поддерживают русский язык (например, Амадеус) (не обязательно для заполнения, тип - строка);

  • FirstNameLatin (пример: "Ivan")  - имя персоны на английском языке, указывается так же, как в загранпаспорте.
    Передается в системы бронирования при использовании документов, в которых фамилия написана латиницей (например, загранпаспорт или паспорт другой страны. Также используется во всех иностранных системах бронирования, которые не поддерживают русский язык (например, Амадеус) (не обязательно для заполнения, тип - строка);

  • SurNameLatin (пример: "Ivanovich")  - отчество персоны на английском языке, указывается так же, как в загранпаспорте.
    Передается в системы бронирования при использовании документов, в которых фамилия написана латиницей (например, загранпаспорт или паспорт другой страны) при перелетах по России. Также используется во всех иностранных системах бронирования, которые не поддерживают русский язык (например, Амадеус) (не обязательно для заполнения, тип - строка);

  • id_Country (например, "245" - это Российская Федерация) - идентификатор страны, гражданство которой имеет персона.
    Можно получить при помощи обращения к методу получения списка стран (обязательно для заполнения, тип - число);

  • Gender - пол, мужской (true) или женский (false).
    Передается в системы бронирования авиабилетов для определения обращения к пассажиру (MR, MRS), обязательное для заполнения булево поле;

  • id_Group (например, "123") - идентификатор группы, в которую будет добавлена персона (обязательно для заполнения, тип - число);

  • DateCreate (например, "2019-06-13T19:28:10.0280635+03:00") - дата создания персоны.
    Данное поле при редактировании персоны можно не передавать, дата и время;

  • DateChanged (например, "2019-06-13T19:28:10.0280635+03:00")  - дата последнего изменения персоны.
    Данное поле при редактировании персоны можно не передавать, дата и время;

  • id_Person (например, "123") - первичный ключ персоны.
    В том случае, если мы создаем новую персону, то значение не передаем, если редактируем существующую - передаем идентификатор;

  • id_Organization (например, "123") - ссылка на организацию из списка организаций.
    Хотя поле и описано как "необязательное" (для совместимости с v2 системы Кортеос), его необходимо заполнить числом - идентификатором организации;

  • DateBirth (например, "2019-06-13T19:28:10.0280635+03:00") - дата рождения персоны.
    Хотя поле и описано как "необязательное" (для совместимости с v2 системы Кортеос), его необходимо заполнить корректной прошедшей датой, дата и время.

  • id_ClientCreator (например, "123") - идентификатор пользователя-создателя, при создании новой персоны поле не передается, при редактировании надо передавать без изменений, число.

...

На интерфейсе список персон доступен в разделе "Настройки" пользователям, которым разрешено редактировать персон:

...

Список персон выглядит таким образом:

...

Соответственно, действие, аналогичное редактированию персоны из API, можно произвести на интерфейсе при нажатии на кнопку "Изменить" в разделе персональных данных:

...

Для проведения любой операции необходимо пройти авторизацию.

Перед использованием метода необходимо пройти аутентификацию и получить валидный токен, а также, если мы работаем от имени агента, получить контекст клиента.

Info

Для получения контекста

...

персоны используется

...

сервис PersonManagement.asmx

WSDL можно скачать с демо-сайта: https://

...

stage1.corteos.ru/XmlGate/V3/StaticData/

...

Persons/

...

PersonManagement.asmx?wsdl

Для работы в продуктовой среде необходимо

...

заменить “stage1.corteos.ru на свой домен (на котором работают пользователи вашей компании).


В API реализованы следующие методы для работы с персоной:

  1. GetV2 - получение персоны по первичному ключу (RW_Person.id_Person);

  2. SaveV2 -

...

  1. создание новой персоны или редактирование существующей;

  2. ListV2 - получение списка персон

...

  1. группы компаний;

  2. CheckV2 - дополнительный сервисный метод, выгрузка персоны по структурному или структурному меняемому коду.

  3. DeleteV2 - удаление

...

  1. персоны по первичному ключу.

Подробное описание

...

методов с примерами:

...

  1. Получение персоны по первичному ключу (GetV2)

Для выгрузки персоны по первичному ключу используется метод PersonGetV2. Соответственно, для проведения выгрузки данных, необходимо хранить на стороне клиента API передать первичный ключ персоны (id_Person).

Запрос / Ответ / Ответ с ошибкой2. Сохранение изменений в персоне или создание новой персоны

  1. Создание новой персоны или редактирование существующей (SaveV2)

Для сохранения изменений в уже созданной персоне необходимо передать тот же объект, который мы выгрузили в методе PersonGetV2 в метод PersonSaveV2.

Запрос

первичный ключ персоны (id_Person). В том случае, если мы создаем новую персону, элемент <cor:id_Person>223</cor:id_Person> не первичный ключ не передаем.

Если нам надо удалить персонуперсоны, то в атрибуте deleted передаем значение true.

Пример успешного ответа:

Пример ответа с ошибкой:

3. Получение Запрос на создание / Запрос на изменение / Ответ

  1. Получение списка персон группы компаний (ListV2)

Для получения списка персон внутри группы компаний используется метод ListV2. Так как список персон может быть очень большим, то он выгружается порционно. Рекомендуется выгружать не более 100 элементов в одном запросе.

Запрос Ответ
Мы передаем поля skip и take, в которых определяется zero-based диапазон выгрузки.

Ответ выглядит таким образом:

 В контейнере В ответе мы видим такие атрибуты: TotalNumberOfElements="479" Skip="100" Take="2":

  • TotalNumberOfElements TotalNumberOfElements - сколько всего персон в БД в рамках этой группы компаний;

  • Skip и Take Skip и Take - определяют диапазон выгрузки.

...

  1. Получение персоны по коду (CheckV2)

Метод PersonCheckV2CheckV2 проверяет, есть ли в БД персона с определенным кодом и, если персона есть, то выгружает её.

...

В поле codeValue следует передать значение кода, которое можно взять в редакторе персоны:

...

Запрос 

В том случае, если персона с таким кодом есть в БД, то мы получаем такой ответ:

Ответ
Из него мы можем получить идентификатор персоны в БД (поле id_Person).

Если же персоны с таким кодом в БД нет, то элемент ResponseDetails будет равен null.5. DeleteV2

  1. Удаление персоны по первичному ключу (DeleteV2)

Для удаления персоны по первичному ключу (id_Person) используется метод DeleteV2.
Запрос Ответ