CreateUser

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

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

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

Создание нового пользователя. Можно сразу привязать его к компаниям и существующим задачам.

  • CreateUser — связывает с существующими задачами
  • CreateUserWithTasks — создает и юзера, и таски

REST — http://users.bugred.ru/tasks/rest/createuser

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

Имя параметраТипОбязательный?Описание
emailстрокадаemail пользователя
nameстрокадаимя пользователя
tasksмассивдаПеречень задач, за которые будет отвечать пользователь
companiesмассивдаПеречень компаний, к которым пользователь относится
hobbyстроканетХобби
adresстроканетАдрес
name1строканетИмя 1
surname1строканетФамилия 1
fathername1строканетОтчество 1
catстроканетКошечка
dogстроканетСобачка
parrotстроканетПопугайчик
cavyстроканетМорская свинка
hamsterстроканетХомячок
squirrelстроканетБелочка
phoneстроканетТелефон
innстроканетИНН
genderm / fнетПол
birthdayдатанетДата рождения в формате дд.мм.гггг
date_startдатанетНачал работать в компании (в формате дд.мм.гггг)

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

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

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

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

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

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

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

  • Имя и емейл должны быть уникальными
  • ИНН — 12 цифр

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

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

Запрос:

{
  "email": "test_cu_6@mail.com",
  "name": "Рест 6",
  "tasks": [12],
  "companies": [36,37],
  "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"
} 

Ответ:

{
    "email": "test_cu_6@mail.com",
    "name": "Рест 6",
    "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": 1538230614,
        "usec": 324000
    },
    "birthday": {
        "sec": -2208997817,
        "usec": 0
    },
    "role": [
        "user"
    ],
    "date_register": {
        "sec": 1538230614,
        "usec": 324000
    },
    "date": "2018-09-29",
    "by_user": "manager@mail.ru",
    "companies": [
        {
            "name": "companysome1",
            "id": 37
        },
        {
            "name": "companysome1",
            "id": 36
        }
    ],
    "tasks": [
        {
            "name": "Веснушки",
            "id": 12
        }
    ]
}

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

Запрос

{
  "email": "test_1@mail.com",
  "name": "Иванушка",
  "tasks": [56],
  "companies": [7, 8]
} 

Ответ аналогичен прошлому