Где Сейчас

Авторизация

Со стороны пользователя

Регистрация и авторизация осуществляется по номеру телефона.
Пользователь вводит свой номер телефона в приложении и получает по SMS трехзначный код подтверждения. После корректного ввода кода он авторизуется в сервисе (регистрация нового пользователя происходит автоматически). Если код был введен неверно более 5 раз подряд, то повторную отправку кода по SMS можно осуществить через 5 минут.

Авторизация в приложении осуществляется один раз. После чего сохраненный в приложении ключ доступа (accessToken) используется для последующих запросов.

Со стороны приложения

Отправка кода подтверждения на номер пользователя (msisdn) осуществляется методом:

POST http://gdeseychas.ru/api/v1/auth/{msisdn}

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

{ "data": { "created": "2012-01-28T10:13:48Z", "attempts": 5, "codePosted": true, "auth": false, "liveSeconds": 299 }}

В случае повторой отправки кода в течении 5 минут, метод возвратит ошибку:

{ "error": { "message": "The code has already been sent", "code": 1701 }}

Далее введеный пользователем код подтверждения нужно передать в параметре code:

POST http://gdeseychas.ru/api/v1/auth/{msisdn}?code=XXX

В случае правильного ввода кода будет возвращен ответ с ключем авторизации (accessToken):

{ "data": { "created": "2012-01-28T10:13:48Z", "accessToken": "49040ad4-b2e7-410e-9fc7-709f544970b3", "auth": true }}

Если код введен неверено, то число попыток (attempts) будет уменьшаться до 0. Если пользователь все 5 раз ввел неверный код, то ему необходимо отобразить время, которое необходимо подолждать до повторной отправки кода (параметр liveSeconds).

{ "data": { "created": "2012-01-28T10:23:27Z", "attempts": 4, "codePosted": true, "auth": false, "liveSeconds": 250 }}

Если для данного номера телефона требуется повторная отправка кода (прошло более 5 минут), то будет возвращена ошибка:

{ "error": { "message": "Need to send a new code", "code": 1702 }}

Для получения текущего состояние по номеру используется тот же метод, но GET-вызовом:

GET http://gdeseychas.ru/api/v1/auth/{msisdn}