Общие сведения

Сервис PromoRegistration предназначен для регистрации пользователя в сервисе 1cFresh и выполняет следующие операции:

  1. Создание нового абонента
  2. Создание нового пользователя абонента
  3. Создание приложения нового абонента и оформление подписки на тариф
  4. Оповещение пользователя о регистрации в сервисе и создании приложения.

Общие параметры, используемые в запросах к сервису

Имя

Описание

Пример

server

Адрес сервера сервиса.https://1cfresh.com
regАдрес сервиса регистрации.a/adm/hs/promo_reg

authorization

Данные авторизации

Basic bank 123Qwer

Общие параметры ответов всех методов

Параметр

Тип

Описание

errorБулевоУказывает, что во время выполнения метода возникла ошибка.
responseЧислоКод возврата. У каждого метода свой набор кодов возврата.
messageСтрокаКомментарий к выполненной операции (например, описание ошибки).

Пользователю, от имени которого выполняется метод сервиса, должны быть назначены роли:

  • УдаленныйДоступБыстраяРегистрация
  • УдаленныйДоступВнешняяРегистрация

Также в информационной базе МС должны быть штатным образом настроены разрешения внешней регистрации).

Метод check_user

Проверяет существование в сервисе пользователя с указанным логином.

Параметры запроса

Параметр

Тип

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

Значение

loginСтрокаДаЛогин пользователя в сервисе (адрес электронной почты).

Параметры ответа

Параметр

Тип

Значение

urlСтрокаURL приложения, созданного при регистрации (если приложение уже подготовлено).
accountЧислоКод абонента, созданного при регистрации.
tenantЧислоНомер области, адрес которой приведен в URL.

Пример запроса

POST {{server}}/{{reg}}/check_user
Authorization: {{authorization}}
 
{
  "login":"user@mail.com"
}

Пример ответа для организации, регистрировавшей абонента

{
  "error": false,
  "response": 10201,
  "message": "Указанный адрес электронной почты уже используется.",
  "url": "https://1cfresh.com/a/smtl/20",
  "tenant": 20,
  "account": 11
}

Пример ответа для прочей обслуживающей организации

{
  "error": false,
  "response": 10403,
  "message": "Указанный адрес электронной почты уже используется.",
  "url": "",
  "tenant": 0,
  "account": 0
}

Возможные коды ответа

Код

Значение

10200Пользователь существует.
10400Обязательные параметры либо не указаны, либо некорректны.

10403

Пользователь существует, информация по пользователю не доступна.
10404Пользователь с указанным логином не найден.
10500Внутренняя ошибка.


Параметры ответа URLAccount и Tenant метода CheckUser заполняются только в том случае, когда запрашивается информация о пользователях, которые были ранее зарегистрированы методом SignUp от имени того же самого служебного пользователя. Если запрашивается информация о пользователе, который был зарегистрирован в сервисе каким-то другим способом (или от имени другого служебного пользователя), параметры URLAccount и Tenant не заполняются.

Метод sign_up

Инициирует регистрацию абонента в сервисе и создание нового приложения (тип приложения определяется настройками внутри сервиса).

Параметры запроса

Параметр

Тип

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

Значение

nameСтрокаДаИмя пользователя (отображаемое имя, не логин).
emailСтрокаДаАдрес электронной почты. Также является логином пользователя в сервисе.
phoneСтрока
Контактный телефон пользователя (не обязательный).
tariffСтрока
Код тарифа, на который нужно подписать абонента. Если не указан, будет использован тариф, заданный в настройках системы по умолчанию.
validityЧисло
Период действия подписки в днях. Если не указан, будет использован период, заданный в настройках системы по умолчанию.
Если параметр Tariff заполнен, параметр Validity также должен быть заполнен.

tenants_count

Число
Количество создаваемых приложений. Если не указано, создается одно приложение.
fast_completionБулево
Указывает, что необходимо сразу же инициировать процесс подтверждения регистрации и начать подготовку приложения. 
send_notificationБулево
Указывает, что необходимо отправить уведомление на почту пользователя сразу же после регистрации (по умолчанию = Истина)

Параметры ответа

Параметр

Тип

Значение

registration_codeСтрокаРегистрационный код (код приглашения). Это справочная информация, для дальнейших действий она не требуется

Пример запроса

POST {{server}}/{{reg}}/sign_up
Authorization: {{authorization}}
 
{
  "email":"user@mail.com",
  "name": "User",
  "fast_completion": true,
  "send_notification": false,
  "tariff": "2",
  "validity": "30"
}

Пример ответа

{
  "error": false
  "response": 10202
  "message": " "
  "registration_code": "9fdb128e-bb3a-11e7-6381-08002798b77b"
}

Возможные коды ответа

Код

Значение

10202Запрос на регистрацию успешно принят к обработке, регистрационный код возвращен в параметре RegistrationCode.
10400Обязательные параметры либо не указаны, либо некорректны.
10404Не найден тариф с указанным кодом.
10406Некорректное значение количества приложений. Ожидается положительное число.
10412Количество приложений превышает доступный лимит по тарифу.
10409Указанный адрес электронной почты уже используется в сервисе.
10500Внутренняя ошибка.

Метод get_user_id

Возвращает идентификатор пользователя сервиса по его логину.

Параметры запроса

Параметр

Тип

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

Значение

loginСтрокаДаЛогин пользователя в сервисе (адрес электронной почты).

Параметры ответа

Параметр

Тип

Значение

userid

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

Пример запроса

POST {{server}}/{{reg}}/get_user_id
Authorization: {{authorization}}
 
{
  "login":"user@mail.com"
}

Пример ответа

{
  "error": false,
  "response": 10200,
  "message": "",
  "userid": "80f69852-eb3b-11e7-819b-0050568925e0"
}
Параметр ответа userid заполняется только в том случае, когда запрашивается информация о пользователях, которые были ранее зарегистрированы методом sign_up от имени того же самого служебного пользователя. Если запрашивается информация о пользователе, который был зарегистрирован в сервисе каким-то другим способом (или от имени другого служебного пользователя), параметр userid не заполняются.

Метод get_app_url

Возвращает URL созданного приложения по указанному логину пользователя.

Метод возвращает только список приложений созданных при регистрации и не предназначен для получения полного списка приложений абонента.

Параметры запроса

Параметр

Тип

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

Значение

loginСтрокаДаЛогин пользователя в сервисе (адрес электронной почты).
send_notificationБулевоНетУказывает, что необходимо отправить уведомление на почту пользователя сразу же после подготовки приложения.

Параметры ответа

Параметр

Тип

Значение

urlСтрока, Массив

Адрес перехода после регистрации:

  • если регистрация приложения завершена, возвращается постоянный адрес приложения. Если запрашивалось создание нескольких приложений, то возвращается массив.
  • если регистрация не завершена, возвращается адрес страницы завершения регистрации
accountЧислоКод абонента, созданного при регистрации.
appСтрокаИмя приложения (код конфигурации приложения)
tenantЧисло, МассивНомер области, адрес которой приведен в URL. Если запрашивалось создание нескольких приложений, то возвращается массив.
permanent_urlСтрока, МассивПостоянный адрес приложения (возвращается в любом случае, даже пока приложение не готово к использованию). Если запрашивалось создание нескольких приложений, то возвращается массив.

Пример запроса

POST {{server}}/{{reg}}/get_app_url
Authorization: {{authorization}}
 
{
  "login":"user@mail.com",
  "send_notification": false
}

Пример ответа

{
  "error": false,
  "response": 10201,
  "message": "",
  "url": "https://1cfresh.com/a/smtl/20",
  "tenant": 20,
  "account": 3,
  "app": "smtl",
  "permanent_url": "https://1cfresh.com/a/smtl/20"
}

Пример ответа при запросе нескольких приложений

{  
   "error":false,
   "response":10201,
   "message":"",
   "url":[  
      "https://1cfresh.com/a/smtl/20",
      "https://1cfresh.com/a/smtl/21",
      "https://1cfresh.com/a/smtl/22"
   ],
   "tenant":[  
      20,
      21,
      22
   ],
   "account":3,
   "app":"smtl",
   "permanent_url":[  
      "https://1cfresh.com/a/smtl/20",
      "https://1cfresh.com/a/smtl/21",
      "https://1cfresh.com/a/smtl/22"
   ]
}

Возможные коды ответа

Код

Значение

10201Приложение успешно создано, адрес возвращен в параметре URL.
10102Приложение в процессе создания, необходимо обратиться позже.
10400Обязательные параметры либо не указаны, либо некорректны.
10408Истекло допустимое время быстрой регистрации.
10409Пользователь был зарегистрирован в сервисе другим партнером.
10500Внутренняя ошибка.

Метод send_notification

Отправляет пользователю оповещение о результатах регистрации.

Параметры запроса

Параметр

Тип

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

Значение

loginСтрокаДаЛогин пользователя в сервисе (адрес электронной почты).

Пример запроса

POST {{server}}/{{reg}}/send_notification
Authorization: {{authorization}}
 
{
  "login":"user@mail.com"
}

Пример ответа если оповещение отправлено

{
  "error": false,
  "response": 10200,
  "message": ""
}

Возможные коды ответа

Код

Значение

10200Оповещение успешно отправлено.
10403У текущего пользователя нет доступа на отправку оповещения этому пользователю.
Оповещение отправляется только в том случае, если запрос отправляется от имени того же пользователя, который ранее регистрировал клиента методом sign_up.