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

Зарегистрировать пользователя

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

POST

/organization/user/new

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

      "login"    :"mail@domain.ru",

// Строковое значение логина

      "name"     :"name",

// Имя пользователя

      "phone"    :"+797800000",

// Телефон пользователя

      "email"    :"mail@domain.ru",

// Почтовый ящик

      "gender"   :"male/female",

// [Необязательный]. Пол

      "birthdate": unixtime,

// [Необязательный]. Дата рождения. Число в миллисекундах.

Пример: 644529600000

      "attach_free_card": true,

// [Необязательный]. Булево. Можно явно указать будет ли выдана карта пользователю или нет. Приоритет выше, чем у аналогичной настройки сервиса.

      "activation_shop_id": "shop_id",

// Магазин активации карты, если указано, что карта должна быть выдана и активирована при выдаче

      "home_phone": "13442",

// Дополнительный номер телефона

 

      "recieve_notifications": 1

// Получать уведомления или нет, доступные значения 0,1

 

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена",

  "id":"d56c6a5a-99d7-44b5-b020-ae492bd18cf4"

// Идентификтаор новой учетной записи
}

 

 

Получить список пользователей

GET

/organization/user/

 

Параметры

// Пол

gender // “male”, “female”

 

// Заблокирован

is_locked // true, false

 

// Подтвержден

confirmed // true, false

 

// Фильтр. Поиск ведется сразу по нескольким полям. Не предназначен для поиска в больших таблицах

user_filter // string

 

// Логин. По полному соответствию

login // string

 

// Страница

page // int

 

// Элементов на странице

per_page // int

 

// Подсчет пагинации

calculate_count // true, false

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{

  "users": 

  [

    {

      "row_number":      1,

      "id":"9eaba2de-3816-4c13-bed2-67fdf4d554fb",

      "login":"2911394835025",

      "name":"Аааааа  Аааааа",

      "phone":"",

      "home_phone":"",

      "email":"nomail@nomail.nomail",

      "gender":"male",

      "birthdate":      1000,

      "is_locked":      0,

      "block_description":"",

      "confirmed":      1,

      "recieve_notifications":      1,

      "image":""   

    },

    {

      "row_number":      2,

      "id":"fbfdc9d9-e206-4024-a353-b6efa75cfbf0",

      "login":"2911529397541",

      "name":"Абдула  Юсупов",

      "phone":"79234289621",

      "home_phone":"",

      "email":"nomail@nomail.nomail",

      "gender":"male",

      "birthdate":      553132800000,

      "is_locked":      0,

      "block_description":"",

      "confirmed":      1,

      "recieve_notifications":      1,

      "image":""   

    } 

  ],

  "pagination": 

  {

    "per_page":    2,

    "page":    1,

    "items":    1597,

    "pages":    799 

  },

  "code":  0,

  "message":"Операция выполнена"

}

 

 

Получить список пользователей по:

  • Телефону
  • Почте
  • Дополнительному телефону
  • Имени

 

GET

/organization/user/by_phone

/organization/user/by_email

/organization/user/by_name

/organization/user/by_homephone

 

Параметры

// Пол

gender // “male”, “female”

 

// Заблокирован

is_locked // true, false

 

// Подтвержден

confirmed // true, false

 

// Фильтр. Поиск ведется по конкретному полю. Предназначен для нечеткого поиска в больших таблицах.

filter // string

 

// Страница

page // int

 

// Элементов на странице

per_page // int

 

// Подсчет пагинации

calculate_count // true, false

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{

  "users": 

  [

    {

      "row_number":      1,

      "id":"9eaba2de-3816-4c13-bed2-67fdf4d554fb",

      "login":"2911394835025",

      "name":"Аааааа  Аааааа",

      "phone":"",

      "home_phone":"",

      "email":"nomail@nomail.nomail",

      "gender":"male",

      "birthdate":      1000,

      "is_locked":      0,

      "block_description":"",

      "confirmed":      1,

      "recieve_notifications":      1,

      "image":""   

    },

    {

      "row_number":      2,

      "id":"fbfdc9d9-e206-4024-a353-b6efa75cfbf0",

      "login":"2911529397541",

      "name":"Абдула  Юсупов",

      "phone":"79234289621",

      "home_phone":"",

      "email":"nomail@nomail.nomail",

      "gender":"male",

      "birthdate":      553132800000,

      "is_locked":      0,

      "block_description":"",

      "confirmed":      1,

      "recieve_notifications":      1,

      "image":""   

    } 

  ],

  "pagination": 

  {

    "per_page":    2,

    "page":    1,

    "items":    1597,

    "pages":    799 

  },

  "code":  0,

  "message":"Операция выполнена"

}

 

 

 

Получить пользователя

GET

/organization/user/{id}

 

Параметры

id // Идентификатор пользователя.

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{
"code": 0,
"message": "Операция выполнена",

"user"
  {

      "id":"d56c6a5a-99d7-44b5-b020-ae492bd18cf4",

      "name":"name",

      "phone":"",

      "email":"mrdjan@yandex.ru",

      "gender":"male",

      "birthdate":      0,

      "is_locked":      0,

      "confirmed":      1,

      "recieve_notifications":      0,

      "image":""   
  }

}

 

Прикрепить карту к пользователю

POST

/organization/card/attach

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

 "user_id": uuid,

 "card_id": uuid

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена"

}

 

 

Обновить информацию о пользователе

 

POST

/organization/user/{id}

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

  "login":"111", // При редактировании обратить внимание, что если он будет дублироваться с существующим, то обновить пользователя не удастся т.к. дубли запрещены

  "name":"Иванов Семен Поликарпович",

  "phone":"",

  "home_phone":"112233",

  "email":"sh@rarus.ru",

  "gender":"male",

  "birthdate":  724118400000,

  "recieve_notifications":1

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена"

}

 

 

Удалить пользователя

POST

/organization/user/{id}/delete

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

 

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена"

}

 

Отправить код подтверждения пользователю

POST

/user/sign_in/send_confirmation_code

 

Заголовки

 

 

Входной JSON

{

// Логин клиента, уникален

  "login":"1",

// База, в которой происходит событие, можно узнать с помощью sign_in

  "company_id":  17

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена"

}

 

Подтвердить пользователя по отправленному коду

POST

/user/sign_in/confirm

 

Заголовки

 

 

Входной JSON

{

// Логин клиента, уникален

  "login":"1",

 

// Логин клиента, уникален

  "code":"1",

 

// База, в которой происходит событие, можно узнать с помощью sign_in

  "company_id":  17

}

 

Выходной JSON

{
  "code": 0,
  "message": "Операция выполнена"

}