{% load i18n %}
{% trans 'This template "quickapi/_docs.html" is deprecated!' %}
Запросы Пераметры запросов могут передаваться в едином JSON-объекте посредством POST:
jsonData = {
        'method': <method_name>,
        'kwargs': { 'key': <param1>, 'key2': <param2>,
                    'key3': [ <param3_1>, <param3_2>, <param3_3> ],
                    ... },
        'username': <login_name>,
        'password': <password>,
}
Либо они передаются непосредственно в POST запросе, причём параметры авторизации везде необязательны. Пример* для jQuery:
$.post('/api/', {
        'method': <method_name>,
        'key': <param1>, 'key2': <param2>,
        'key3': [ <param3_1>, <param3_2>, <param3_3> ]
}, function() {});
Ключ "key3" в этом случае jQuery автоматически изменит на "key3[]".
* В данном варианте можно передавать только списки и простые значения.
Пример** для jQuery:
$.post('/api/',
    { jsonData: JSON.stringify({
        'method': <method_name>,
        'kwargs': { 'key': <param1>, 'key2': <param2>,
                    'key3': [ <param3_1>, <param3_2>, <param3_3> ],
                    ... },
        })
    }, function() {});
Для правильной сериализации дат в JSON лучше использовать специальный плагин jQuery.
** В данном варианте можно передавать любые сериализуемые объекты.

Пример в Python с HTTP Basic авторизацией:
import urllib2, urllib, json, base64
url = 'https://{{ request.get_host|default:'localhost' }}/api/'
data = {'method':"get_orders_id", 'kwargs':{'date':'2012-01-01', 'state': 4 },}
data = urllib.urlencode({'jsonData':json.dumps(data)})
req = urllib2.Request(url, data=data,
    headers={
        'Authorization': 'Basic ' + base64.b64encode('%s:%s' % ('login', 'passwd'))
    }
)
r = urllib2.urlopen(req)
print r.read()

Пример в Python без использования HTTP авторизации:
import urllib2, urllib, json
url = 'https://{{ request.get_host|default:'localhost' }}/api/'
data = {'username':'login','password':'passwd','method':"get_orders_id", 'kwargs':{'date': '2012-01-01', 'state':2 }, }
data = urllib.urlencode({'jsonData':json.dumps(data)})
r = urllib2.urlopen(url, data=data)
print r.read()

Общая структура ответов
JSON_object = {
    'status': 200, // коды HTTP, имеющие смысл.
    'message': 'Строчное сообщение для пользователя',
    'data': <Вложенный объект JSON>,
}
Тип и структура вложенного объекта зависят от вызываемого метода (см. документацию ниже).

Документация по методам и их параметрам {% for m in methods %} {% endfor %}
Название метода Описание использования
{{ forloop.counter }}

{{ m.name }}

{{ m.doc|safe }}