Начало работы

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

Чтобы начать работу с API, необходимо выполнить несколько простых шагов:

  • Получение URL-адреса API:
  • Вам потребуется знать базовый URL-адрес API

    https://example.com/
  • Аутентификация:
  • API требует аутентификацию для защиты данных, это выполнено с помощьюToken

    Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwibm93IjoxN...
  • Инструменты для тестирования и отладки:
    • PostmancURL

Основные операции

  • Создание данных Create | POST
  • Операция Create используется для добавления новых записей в базу данных.

    JavaScript
    PHP
    cURL
    Python
    1fetch('https://example.com/pages', {
    2    method: 'POST',
    3    headers: {
    4      'Content-Type': 'application/json',
    5      'Authorization': 'Bearer YOUR_API_TOKEN'
    6    },
    7    body: JSON.stringify({
    8      // Здесь укажите нужные параметры для создания страницы
    9    })
    10  })
    11  .then(response => response.json())
    12  .then(data => console.log(data));
  • Чтение данных Read | GET
  • Операция Read позволяет получать данные из базы данных.

    JavaScript
    PHP
    cURL
    Python
    1fetch('https://example.com/resource/123', {
    2    method: 'GET',
    3    headers: {
    4      'Authorization': 'Bearer YOUR_API_TOKEN'
    5    }
    6  })
    7  .then(response => response.json())
    8  .then(data => console.log(data));
  • Обновление данных Update | PUT или PATCH
  • Операция Update применяется для внесения изменений в существующие записи.

    JavaScript
    PHP
    cURL
    Python
    1fetch('https://example.com/resource/123', {
    2    method: 'PUT',
    3    headers: {
    4      'Content-Type': 'application/json',
    5      'Authorization': 'Bearer YOUR_API_TOKEN'
    6    },
    7    body: JSON.stringify({
    8      // Здесь укажите нужные параметры для обновления ресурса
    9    })
    10  })
    11  .then(response => response.json())
    12  .then(data => console.log(data));
  • Удаление данных Delete | DELETE
  • Операция Delete позволяет удалять данные по заданному идентификатору.

    JavaScript
    PHP
    cURL
    Python
    1fetch('https://example.com/resource/123', {
    2    method: 'DELETE',
    3    headers: {
    4      'Authorization': 'Bearer YOUR_API_TOKEN'
    5    }
    6  })
    7  .then(response => response.json())
    8  .then(data => console.log(data));

Формат запросов и ответов

Все запросы и ответы API передаются в форматеJSON, что позволяет использовать стандартные методы сериализации и десериализации данных. Это требует от клиента указания правильных заголовков, а также строгого соблюдения JSON-структуры.

Обязательный заголовок для всех запросов (кроме GET):
Content-Type: application/json.

Ограничения на частоту запросов

Для обеспечения стабильной работы сервиса и предотвращения перегрузки, API имеет ограничения на количество запросов, которые могут быть выполнены за определенный период. Это помогает распределить нагрузку и защищает от чрезмерного использования.

  • Максимальная частота запросов:
    API поддерживает лимит в 1000 запросов, которые можно отправить в течение минуты.
  • Ответ сервера при превышении лимита:
    • 429 Too Many Requests - превышено допустимое количество запросов.
    • В Retry-After будет указано время ожидания до следующей разрешенной попытки
  • Рекомендации для работы в пределах лимита:
    • Оптимизация запросов:
      Отправляйте только необходимые данные и избегайте дублирования запросов.
    • Использование кэширования:
      Для часто запрашиваемых данных используйте кэширование, чтобы снизить количество обращений к API.
    • Установка задержек между запросами:
      В случаях, когда запросы отправляются в цикле, добавьте задержку между ними, чтобы не превышать лимиты.
  • Пример:
    1{
    2  "status": "error",
    3  "code": 429,
    4  "message": "Too Many Requests. Please wait before retrying.",
    5  "retryAfter": "60" // Время ожидания в секундах
    6}

Требования к параметрам и типам данных

Для корректной работы API важно соблюдать требования к типам данных, особенно при передаче параметров в запросе. Это помогает избежать ошибок, связанных с несоответствием форматов данных.

С более детальной информацией можно ознакомится в разделе Типы полей