Общие параметры для всех API сервисов
Все параметры можно передавать как GET, так и POST - запросом.
Запрос можно отправлять как по протоколу http:// так и по https://.
Также можно обращаться по ip-адресу сервера: http://5.35.101.49
api_key также можно передавать в заголовке: Authorization: Bearer api_key
Если передан неверный запрос, возвращается HTTP-код ошибки: "400 Bad Request"
Если закончились средства и запросы, возвращается HTTP-код ошибки: "429 You exceeded the rate limit".
Очень важно прекратить отправлять запросы до следующего дня, когда будет начислен пакет бесплатных запросов, или до оплаты,
иначе ваш IP будет заблокирован системой защиты от DDOS-атак.
Формат ответа
Проект переходит от старого формата, когда для указания формата ответа на API передавался один из параметров: html, json, xml, sql к новому:
/api/объект/метод?параметры - ответ a формате HTML, удобно для вывода в DIV-блок /json/объект/метод?параметры - ответ в json формате /xml/объект/метод?параметры - ответ в xml форматеДля получения полей дата, или время ('time','date0','from','to') в нужном формате, используйте параметр
time_format, например time_format=d.m.Y, где:
d - деньm - месяц
y - год две цифры
Y - год 4 цифры
Старый формат и старые адреса ещё поддерживаются, но по возможности используйте новые.
Ответ в формате json удобен для заполнения INPUT-полей или преобразования в массив для дальнейшей обработки на Javascript или PHP.
Для Вашего удобства поддерживается формат JSONP. Вы можете добавить параметр &jsonp=ИМЯ_ФУНКЦИИ:
<script type="application/javascript"
src="http://htmlweb.ru/api/service/bic/043469751?json&jsonp=parseResponse"></script>
будет возвращен следующий код:
parseResponse({"name":"ОАО КБ \"РЕГИОНАЛЬНЫЙ КРЕДИТ\"", "city":"КОСТРОМА", ...., "limit":50});
charset - по умолчанию все данные возвращаются в кодировке utf-8, Для получения любой другой кодировки передайте её в дополнительном,
необязательном параметре charset: &charset=windows-1251 или
любой из ISO-8859-1, ISO-8859-15, utf-8, cp866, cp1251, cp1252, and KOI8-R. Обратите внимание, все входящие параметры так же будут конвертироваться из указанной кодировки.
fields - какие поля включать в ответ, например:
https://htmlweb.ru/geo/api.php?city=1&sql=pb_city&fields=id,name,english,area,rajon,country
short - некоторые api запросы позволяют сокращать объем возвращаемой информации, оставляя только самое необходимое.
letter_case - некоторые api запросы позволяют изменять регистр в словах ответа:
- ucfirst - первая буква большая, остальные маленькие
- uc - все буквы большие
debug - параметры POST запроса будут сохраняться в протокол,
ТОЛЬКО если передавать в POST или GET запросе параметр debug.
no_empty - убирает из ответа все пустые поля.
nolimit - убирает из ответа поля limit и balans.
Старый формат
В старом формате все запросы обращались на свой обработчик, например: /service/api.php?html&... и одним из параметров передавался желаемый формат ответа:
html или не задано - получить информацию в html формате, удобно для вывода в DIV-блок
json - получить информацию в json формате
xml - получить информацию в xml формате, удобно для обращения из PHP. Не нужно передавать при обращении на /xml/
sql[=имя_таблицы] - получить информацию в sql формате. Удобно для вставки информации в базу MySql с помощью phpMyAdmin.
Аутентификация
api_key - уникальный ключ, указан в вашем личном кабинете.
В личном кабинете можно установить ограничение на обращение только с определённых IP, подсетей или доменов.
Остаток запросов и баланс
limit - возвращает количество оставшихся запросов до конца суток для бесплатных запросов или количество запросов до окончания тарифа при платных.
Ограничения на бесплатные запросы и тарификация описана здесь.
balans - остаток денежных средств на вашем балансе в рублях.
Пример ответа на API запрос в формате json:
{"status":200,"limit":4992,"balans":82680.12}
Если вы хотите исключить эти параметры из вывода, добавьте в запрос параметр &noLimit
Необходимо настроить ваш скрипт, чтобы когда вы получаете ответ, что у вас нет денег и нет запросов, он переставал отправлять запросы до пополнения вами баланса (хотя бы на сутки).
Краткое описание конкретного API метода
Только для нового формата!
Подробное описание методов может отличаться от актуального. И зачастую неудобно искать в большом мануале информацию, какой же параметр передать. Для получения краткой актуальной информации об API методе добавьте параметр help. Например:
http://htmlweb.ru/api/service/bic/?helpили
http://htmlweb.ru/api.php?obj=service&m=bic&help
Для получения информации обо всех доступных методах выбранного сервиса:
https://htmlweb.ru/api.php?obj=service&help
API методы могут вызываться через телеграмм-бота
Наш телеграм бот @htmlweb_bot может выполнять часть функций доступных по API. Если вам нужна какая-то функция, которой ещё нет в боте, напишите - реализуем ее бесплатно и приоритетно.
Перейти к списку всех API сервисов
.
Прокомментировать/Отблагодарить