wiki:API

Version 2 (modified by komm, 8 years ago) (diff)

--

Описание API

+-------------Общий вид запросов протокола-----------------------

Работа идет POST запросами в JSON формате.
Общий вид POST запроса:

        {
        "action":ACTION,
        "params":{PARAM1,...,PARAMN}
        }

Далее в описании притокола для запроса будут описываться только значения _ACTION и {PARAM1,...,PARAMN}

Ответ сервера может быть следущих видов:

  1. Положительный:
        {
                "response":"ok",
                "result":{RESUL1,...,RESULT2}
        }

Далее в описании притокола для ответа будут описываться только значения {RESUL1,...RESULT2}

  1. Отрицательный:
        {
                "response":"error",
                "reason":"REASON"
        }

Далее в описании протокола для ответа будут описываться только значения REASON

  1. Ошибка сервера.
        {
                "response":"system error"
        }

Все запросы и ответы должны являть собой синтаксически корректные JSON-структуры.

|
+-------------Протокол-----------------------
|

1.1) Регистрация

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

  1. Создание нового пользователя хостинга:
                ACTION: "adduser"
                PARAM:
                        "login":"_LOGIN",
                        "password":["_PASSWORD1","_PASSWORD2"],
                        "email":["_MAIL1","_MAIL2",".."]

Ответы сервера:

  1. В случае удачной регистрации.
                        "uniqcode":"Уникальный код"

  1. Неудачная регистрация.
                        "bad_login",
                        "bad_password",
                        "bad_email"

  1. Восстановление пароля:
                ACTION: "restore_password",
                PARAM:
                        "email":"_EMAIL"

Ответы сервера: а.

                        "ok"

b.

                        "error"

  1. Смена пароля:
                ACTION":"change_password",
                PARAM:
                        "login":"_LOGIN",
                        "oldpassword":"_OLDPASSWORD",
                        "newpassword":"_NEWPASSWORD"

Ответы сервера: a.

                        "ok"

b.

                        "no",
                        либо
                        "error"

1.2) Авторизация

1.Запрос серверу:

                ACTION: "authorization",
                PARAM:
                        "login":"_LOGIN",
                        "password":"_PASSWORD",
                        "uniqcode":"_UNIQCODE",
                        "session":"yes|no"

Где "session" показывает надо ли на стороне командной машины вести сессию соединения. "uniqcode" -- не обязательный параметр, может применяться вместо пароля(например передавать сертификат)

Ответ сервера: a.

                        "userid":"_USERID",
                        "cookie":"_COOKIE"

где "cookie" отдается в том случае, если был установлен флаг "session":"ok"

b.

                        "bad_login",
                        "bad_password"