Перейти к содержанию

Подключение к Production

URLs:

Шаг 1. Аутентификация. Получение токена

Для получения OAuth-токена нужно отправить запрос на адрес https://accounts.sdelka-rf.ru/auth_token с параметрами client_id, client_secret, username, password

Для получения параметров подключения для конкретного застройщика (client_id, client_secret, username, password) обратитесь к менеджерам или в техническую поддержку в Телеграмме @sdelkarf_supportbot.

Пример запроса аутентификации:

curl \
    --location \
    --request POST \
    'https://accounts.sdelka-rf.ru/auth_token' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --data-urlencode 'grant_type=password' \
    --data-urlencode 'client_id=test' \
    --data-urlencode 'client_secret=test' \
    --data-urlencode 'username=<username>' \
    --data-urlencode 'password=<password>' \
    --data-urlencode 'scope='

В ответ должен прийти JSON с токенами:

{"token_type":"Bearer","expires_in":3600,"access_token":"<access_token>","refresh_token":"<refresh_token>"}

Шаг 2. Тестовый запрос к API

Для работы с основным API используется access_token.

Тестовый запрос для проверки подключения:

curl -X 'GET' \
  'https://api.sdelka-rf.ru/client-exchange/v1/hello' \
  --header 'Authorization: Bearer <access_token>' \
  --header 'accept: application/json'

В случае успеха придёт ответ с приветствием:

{"message":"Hello, \u0421\u043f\u0430\u043d\u0447 \u0411\u043e\u0431 \u0421\u043a\u0432\u0435\u0430\u043f\u044d\u043d\u0442\u0441!"}

Этот же ответ но с JSON unescaped:

{"message":"Hello, Спанч Боб Сквеапэнтс!"}

Шаг 4. Перевыпуск токена

access_token протухает через час и после этого его нужно перевыпустить.

Есть 2 способа как перевыпустить токен:

  1. Повторить запрос выше.
  2. Выполнить запрос на обновление токена (предпочтительно).

Пример запроса на обновление токена:

curl \
    --location \
    --request POST \
    'https://accounts.sdelka-rf.ru/auth_token' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --data-urlencode 'grant_type=refresh_token' \
    --data-urlencode 'client_id=test' \
    --data-urlencode 'client_secret=test' \
    --data-urlencode 'refresh_token=<refresh_token>' \
    --data-urlencode 'scope='

В ответ должен прийти такой же JSON с токенами как и при обычной аутентификации:

{"token_type":"Bearer","expires_in":3600,"access_token":"<access_token>","refresh_t