CreateUserWithTasks

CreateUserWithTasks

Это общедоступный API-метод, который вы можете подергать для ознакомления.

Все методы сделаны для моего курса «Тестирование REST API». Теорию я выкладываю на youtube и в блог, а за практикой заходите!

Метод с массивами!

Входные параметры

Имя параметра

Тип

Обязательный?

Описание

email

строка

да

email пользователя

name

строка

да

имя пользователя

tasks

массив

да

Перечень задач, за которые будет отвечать пользователь

companies

массив

нет

Перечень компаний, к которым пользователь относится

hobby

строка

нет

Хобби

adres

строка

нет

Адрес

name1

строка

нет

Имя 1

surname1

строка

нет

Фамилия 1

fathername1

строка

нет

Отчество 1

cat

строка

нет

Кошечка

dog

строка

нет

Собачка

parrot

строка

нет

Попугайчик

cavy

строка

нет

Морская свинка

hamster

строка

нет

Хомячок

squirrel

строка

нет

Белочка

phone

строка

нет

Телефон

inn

строка

нет

ИНН

gender

m / f

нет

Пол

birthday

дата

нет

Дата рождения в формате дд.мм.гггг

date_start

дата

нет

Начал работать в компании (в формате дд.мм.гггг)

Результирующие данные

Имя параметра

Описание

party

Информация по сохраненному клиенту

Особенности использования

Фишка в том, что я могу создать юзера и сразу навязать ему задачу и указать где он работает.

Поля юзера — такие же, как в FullUpdateUser
+ блок <companies> (максимум 3 в одном запросе, необязательный блок. Отсылка на компанию по ее ИД)
+ блок <tasks> (максимум 5 в одном запросе, обязательный блок. Задача создается по паре "Название" + "Описание")

Обязательные поля — name, email и блоки задач

Остальные проверки такие же, как в интерфейсе:

  • Имя и емейл должны быть уникальными

  • ИНН — 12 цифр

Примеры вызова

Пример 1. План-максимум, все поля

Запрос:

{ "email": "test_cu_3@mail.com", "name": "Рестовый 3", "tasks": [{ "title": "Первая задача 2", "description": "Первая задача 111" }, { "title": "Вторая задача 2", "description": "Вторая задача 111" } ], "companies": [19, 20], "hobby":"Стрельба из лука, Настолки", "adres":"адрес 1", "name1":"Тестовый, ясен пень", "surname1":"Иванов", "fathername1":"Петров", "cat":"Маруся", "dog":"Ушастый", "parrot":"Васька", "cavy":"Кто ты?", "hamster":"Хомяк", "squirrel":"Белая горячка к нам пришла", "phone":"333 33 33", "inn":"123456789012", "gender":"m", "birthday":"01.01.1900", "date_start":"11.11.2000" }

Ответ:

{ "name": "Рестовый 3", "name1": "Тестовый, ясен пень", "hobby": "Стрельба из лука, Настолки", "surname1": "Иванов", "fathername1": "Петров", "cat": "Маруся", "dog": "Ушастый", "parrot": "Васька", "cavy": "Кто ты?", "hamster": "Хомяк", "squirrel": "Белая горячка к нам пришла", "phone": "333 33 33", "adres": "адрес 1", "gender": "m", "date_start": { "sec": 973890000, "usec": 0 }, "date_updated": { "sec": 1538362106, "usec": 80000 }, "birthday": { "sec": -2208997817, "usec": 0 }, "role": [ "user" ], "date_register": { "sec": 1538362106, "usec": 80000 }, "date": "2018-10-01", "email": "test_cu_3@mail.com", "by_user": "manager@mail.ru", "companies": [ { "name": "Иванов 6", "id": 20 }, { "name": "Иванов 5", "id": 19 } ], "tasks": [ { "name": "Первая задача 2", "id": 47 }, { "name": "Вторая задача 2", "id": 48 } ] }

Пример 2. План-минимум, только name и email из полей клиента

Запрос

{ "email": "test_cu_26@mail.com", "name": "Рестовый 6", "tasks": [{ "title": "Первая задача", "description": "Первая задача 11" }, { "title": "Вторая задача", "description": "Вторая задача 11" } ] }

Ответ:

{ "name": "Рестовый 6", "date_updated": { "sec": 1538326598, "usec": 100000 }, "role": [ "user" ], "date_register": { "sec": 1538326598, "usec": 100000 }, "date": "2018-09-30", "email": "test_cu_26@mail.com", "by_user": "manager@mail.ru", "companies": null, "tasks": [ { "name": "Первая задача", "id": 43 }, { "name": "Вторая задача", "id": 44 } ] }

Пример 3. SOAP с массивом данных

Запрос

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wrap="http://foo.bar/wrappersoapserver" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"> <soapenv:Header/> <soapenv:Body> <wrap:CreateUserWithTasks> <email>newsupermail255@noibiz.com</email> <name>SOAP name 25</name> <tasks> <task> <task_title>Первая задача(soap 1)</task_title> <task_description>Описание</task_description> </task> <task> <task_title>Вторая задача(soap 1)</task_title> <task_description>Описание</task_description> </task> </tasks> <companies soapenc:arrayType="xsd:array[]"> <item>513</item> <item>20</item> </companies> </wrap:CreateUserWithTasks> </soapenv:Body> </soapenv:Envelope>

Ответ:

<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://users.bugred.ru/tasks/soap/WrapperSoapServer.php" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:CreateUserWithTasksResponse> <return xsi:type="SOAP-ENC:Struct"> <email xsi:type="xsd:string">newsupermail255@noibiz.com</email> <name xsi:type="xsd:string">SOAP name 25</name> <avatar xsi:nil="true"/> <password xsi:nil="true"/> <birthday xsi:type="xsd:int">0</birthday> <gender xsi:nil="true"/> <date_start xsi:type="xsd:int">0</date_start> <hobby xsi:nil="true"/> <name1 xsi:type="xsd:string"/> <surname1 xsi:type="xsd:string"/> <fathername1 xsi:type="xsd:string"/> <cat xsi:type="xsd:string"/> <dog xsi:type="xsd:string"/> <parrot xsi:type="xsd:string"/> <cavy xsi:type="xsd:string"/> <hamster xsi:type="xsd:string"/> <squirrel xsi:type="xsd:string"/> <phone xsi:type="xsd:string"/> <adres xsi:type="xsd:string"/> <tasks SOAP-ENC:arrayType="xsd:int[2]" xsi:type="SOAP-ENC:Array"> <item xsi:type="xsd:int">303</item> <item xsi:type="xsd:int">304</item> </tasks> <companies SOAP-ENC:arrayType="xsd:int[1]" xsi:type="SOAP-ENC:Array"> <item xsi:type="xsd:int">20</item> </companies> </return> </ns1:CreateUserWithTasksResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>