Москва

ПОЛИТИКА ИСПОЛЬЗОВАНИЯ API на Платформе «Все Свои»

г. Краснодар «_____» ___________ 2025 года

1. ОБЩИЕ ПОЛОЖЕНИЯ

1.1. Настоящая Политика использования API (далее — «Политика») определяет правила и условия использования интерфейсов программирования приложений (API) Платформы «Все Свои».

1.2. API предоставляет разработчикам и партнерам программный доступ к функционалу и данным Платформы для интеграции и создания дополнительных сервисов.

1.3. Политика разработана в соответствии с:

  • Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации»
  • Правилами использования Платформы «Все Свои»
  • Международными стандартами информационной безопасности

2. ОПРЕДЕЛЕНИЯ И ТЕРМИНЫ

2.1. Основные понятия:

2.1.1. API (Application Programming Interface) - набор методов, правил и инструментов для взаимодействия программных компонентов.

2.1.2. Ключ API - уникальный идентификатор, предоставляемый для доступа к API.

2.1.3. Разработчик - физическое или юридическое лицо, использующее API для интеграции с Платформой.

2.1.4. Endpoint (конечная точка)- конкретный URL-адрес API, предоставляющий доступ к определенному функционалу.

3. УСЛОВИЯ ПРЕДОСТАВЛЕНИЯ ДОСТУПА

3.1. Требования к разработчикам:

3.1.1. Для физических лиц:

  • Совершеннолетие
  • Верификация учетной записи
  • Согласие с условиями Политики

3.1.2. Для юридических лиц:

  • Действующая регистрация
  • Заключение договора на использование API
  • Назначение ответственного сотрудника

3.2. Процедура получения доступа:

3.2.1. Регистрация заявки:

  • Заполнение формы на портале для разработчиков
  • Описание целей использования API
  • Техническое описание планируемой интеграции

3.2.2. Рассмотрение заявки:

  • Срок рассмотрения: до 5 рабочих дней
  • Проверка соответствия требованиям безопасности
  • Выдача ключа API после одобрения

4. ВИДЫ API И ФУНКЦИОНАЛ

4.1. Публичные API:

4.1.1. Каталог товаров:

  • Получение информации о товарах
  • Поиск по каталогу
  • Фильтрация и сортировка

4.1.2. Информация о продавцах:

  • Рейтинги и отзывы
  • Информация о магазинах
  • История деятельности

4.2. Приватные API:

4.2.1. Управление заказами:

  • Создание и отслеживание заказов
  • Управление статусами
  • История заказов

4.2.2. Работа с товарами:

  • Добавление и обновление товаров
  • Управление остатками
  • Ценообразование

4.2.3. Аналитика и отчетность:

  • Статистика продаж
  • Отчеты по эффективности
  • Данные о клиентах

5. ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ

5.1. Протоколы и форматы:

5.1.1. Основные протоколы:

  • REST API
  • HTTPS для всех запросов
  • OAuth 2.0 для аутентификации

5.1.2. Форматы данных:

  • JSON для запросов и ответов
  • UTF-8 кодировка
  • Стандартизированные структуры данных

5.2. Ограничения и лимиты:

5.2.1. Rate Limiting:

  • 1000 запросов в час для публичных API
  • 10000 запросов в час для приватных API
  • Динамическое изменение лимитов при необходимости

5.2.2. Размеры данных:

  • Максимальный размер запроса: 10 МБ
  • Максимальный размер ответа: 50 МБ
  • Ограничение на глубину вложенности данных

6. ТРЕБОВАНИЯ БЕЗОПАСНОСТИ

6.1. Защита данных:

6.1.1. Конфиденциальность:

  • Шифрование передаваемых данных
  • Защита ключей API
  • Регулярная ротация учетных данных

6.1.2. Контроль доступа:

  • Принцип минимальных привилегий
  • Разграничение прав по ролям
  • Ведение журналов доступа

6.2. Обязанности разработчиков:

6.2.1. Защита ключей API:

  • Запрет на передачу третьим лицам
  • Хранение в защищенных хранилищах
  • Немедленная блокировка при компрометации

6.2.2. Обработка данных:

  • Соблюдение законодательства о персональных данных
  • Минимизация собираемой информации
  • Своевременное удаление неиспользуемых данных

7. ИСПОЛЬЗОВАНИЕ И ОГРАНИЧЕНИЯ

7.1. Разрешенное использование:

7.1.1. Коммерческие интеграции:

  • Системы управления продажами
  • Сервисы аналитики и отчетности
  • Мобильные приложения

7.1.2. Некоммерческие проекты:

  • Образовательные программы
  • Исследовательские проекты
  • Персональные проекты

7.2. Запрещенное использование:

7.2.1. Нарушающее законодательство:

  • Обход систем безопасности
  • Нарушение авторских прав
  • Несанкционированный сбор данных

7.2.2. Наносящее ущерб Платформе:

  • DDoS-атаки и нагрузочное тестирование
  • Попытки взлома систем
  • Создание конкурирующих сервисов

8. МОНИТОРИНГ И КОНТРОЛЬ

8.1. Системы мониторинга:

8.1.1. Технический мониторинг:

  • Отслеживание нагрузки на API
  • Выявление аномальной активности
  • Контроль качества обслуживания

8.1.2. Бизнес-мониторинг:

  • Анализ паттернов использования
  • Выявление нарушений Политики
  • Оценка эффективности интеграций

8.2. Процедура проверок:

8.2.1. Плановые проверки:

  • Ежеквартальный аудит безопасности
  • Проверка соответствия обновлениям API
  • Тестирование на уязвимости

8.2.2. Внеплановые проверки:

  • При подозрении на нарушение
  • По запросу правоохранительных органов
  • При обнаружении уязвимостей

9. ОБНОВЛЕНИЯ И ПОДДЕРЖКА

9.1. Жизненный цикл API:

9.1.1. Версионирование:

  • Мажорные версии: поддержка 2 года
  • Минорные версии: поддержка 6 месяцев
  • Уведомление об устаревании за 90 дней

9.1.2. Обратная совместимость:

  • Гарантия обратной совместимости в рамках мажорной версии
  • Уведомление об устаревании (Deprecation notice) для устаревающих методов
  • Миграционные гайды

9.2. Техническая поддержка:

9.2.1. Уровни поддержки:

  • Базовая поддержка: документация и форум
  • Стандартная поддержка: email-поддержка
  • Приоритетная поддержка: телефонная поддержка 24/7

9.2.2. Соглашение об уровне обслуживания - SLA (Service Level Agreement):

  • Доступность API: 99.9>#/p###
  • Время ответа на запросы поддержки: 4 часа
  • Решение критических инцидентов: 2 часа

10. ОТВЕТСТВЕННОСТЬ И САНКЦИИ

10.1. Меры воздействия:

10.1.1. За нарушения Политики:

  • Предупреждение за первичное или незначительное нарушение
  • Временное ограничение доступа
  • Блокировка ключа API
  • Расторжение договора

10.1.2. За серьезные нарушения:

  • Взыскание убытков
  • Передача дела в правоохранительные органы
  • Внесение в черный список

10.2. Ответственность разработчиков:

10.2.1. За нарушения безопасности:

  • Компенсация ущерба
  • Возмещение затрат на устранение последствий
  • Административная ответственность

Приложение 1: Техническая документация API Приложение 2: Формы заявок на доступ к API Приложение 3: Политика безопасности при работе с API

ПРИЛОЖЕНИЕ 1 к Политике использования API ТЕХНИЧЕСКАЯ ДОКУМЕНТАЦИЯ API

1. БАЗОВЫЕ ПАРАМЕТРЫ API

1.1. Эндпоинты и версионирование:

1.1.1. Базовый URL:

https://api.vsesvoi.online/v1/

1.1.2. Поддерживаемые методы HTTP:

  • GET - получение данных
  • POST - создание новых записей
  • PUT - полное обновление записей
  • PATCH - частичное обновление записей
  • DELETE - удаление записей

1.1.3. Коды ответов:

  • 200 - Успешный запрос
  • 201 - Ресурс создан
  • 400 - Неверный запрос
  • 401 - Не авторизован
  • 403 - Доступ запрещен
  • 404 - Ресурс не найден
  • 429 - Слишком много запросов
  • 500 - Внутренняя ошибка сервера

1.2. Аутентификация:

1.2.1. Заголовки авторизации:

http

Authorization: Bearer {api_key}

Content-Type: application/json

X-API-Key: your_api_key_here

1.2.2. Получение токена доступа:

http

POST /oauth/token

{

  "grant_type": "client_credentials",

  "client_id": "your_client_id",

  "client_secret": "your_client_secret"

}

2. ОСНОВНЫЕ ЭНДПОЙНТЫ API

2.1. Работа с товарами:

2.1.1. Получение списка товаров:

http

GET /products

Parameters:

  - category_id (optional)

  - limit (default: 50)

  - offset (default: 0)

  - search (optional)

  - sort_by (price, name, rating)

2.1.2. Получение информации о товаре:

http

GET /products/{product_id}

2.1.3. Создание товара:

http

POST /products

{

  "name": "Название товара",

  "description": "Описание товара",

  "price": 1000,

  "category_id": 1,

  "stock_quantity": 10

}

2.2. Управление заказами:

2.2.1. Получение списка заказов:

http

GET /orders

Parameters:

  - status (pending, confirmed, shipped, delivered, cancelled)

  - start_date (YYYY-MM-DD)

  - end_date (YYYY-MM-DD)

2.2.2. Создание заказа:

http

POST /orders

{

  "customer_email": "customer@example.com",

  "items": [

    {

      "product_id": 123,

      "quantity": 2

    }

  ],

  "shipping_address": {

    "address": "ул. Примерная, д. 1",

    "city": "Краснодар",

    "postal_code": "350000"

  }

}

3. ЛИМИТЫ И ОГРАНИЧЕНИЯ

3.1. Rate Limiting:

3.1.1. Лимиты по типам API:

  • Публичные API: 1000 запросов/час
  • Приватные API: 10000 запросов/час
  • Административные API: 50000 запросов/час

3.1.2. Заголовки лимитов:

http

X-RateLimit-Limit: 1000

X-RateLimit-Remaining: 999

X-RateLimit-Reset: 1640995200

ПРИЛОЖЕНИЕ 2 к Политике использования API ФОРМЫ ЗАЯВОК НА ДОСТУП К API

1. ФОРМА ЗАЯВКИ ДЛЯ ФИЗИЧЕСКИХ ЛИЦ

Дата подачи: «__» ________ 202____ г.

1.1. Личные данные:

  • ФИО: _______________
  • Email: _______________
  • Телефон: _______________
  • Дата рождения: _______________

1.2. Информация о проекте:

  • Название проекта: _______________
  • Цель использования API: _______________
  • Описание функционала: _______________
  • Ожидаемое количество запросов/мес: _______

1.3. Технические данные:

  • IP-адреса для белого списка: _______________
  • Callback URL (если требуется): _______________
  • Технологический стек: _______________

Согласия: [ ] Согласен с Политикой использования API [ ] Согласен на обработку персональных данных [ ] Обязуюсь соблюдать лимиты и ограничения

Подпись: ___________________

2. ФОРМА ЗАЯВКИ ДЛЯ ЮРИДИЧЕСКИХ ЛИЦ

Дата подачи: «__» ________ 202 г.

2.1. Данные организации:

  • Наименование: _______________
  • ИНН: _______________
  • ОГРН: _______________
  • Юридический адрес: _______________

2.2. Контактные лица:

  • Руководитель: _______________
  • Технический специалист: _______________
  • Email для уведомлений: _______________

2.3. Бизнес-информация:

  • Сфера деятельности: _______________
  • Количество интеграций: _______
  • Планируемый трафик: _______ запросов/мес

2.4. Технические требования:

  • Необходимые эндпоинты: _______________
  • Требуемый уровень доступа: _______________
  • Часовой пояс для уведомлений: _______________

Подпись руководителя: ___________________ Печать организации


ПРИЛОЖЕНИЕ 1
 к Политике использования API ТЕХНИЧЕСКАЯ ДОКУМЕНТАЦИЯ API

1. БАЗОВЫЕ ПАРАМЕТРЫ API

1.1. Эндпоинты и версионирование:

1.1.1. Базовый URL:

https://api.vsesvoi.online/v1/

1.1.2. Поддерживаемые методы HTTP:

  • GET - получение данных
  • POST - создание новых записей
  • PUT - полное обновление записей
  • PATCH - частичное обновление записей
  • DELETE - удаление записей

1.1.3. Коды ответов:

  • 200 - Успешный запрос
  • 201 - Ресурс создан
  • 400 - Неверный запрос
  • 401 - Не авторизован
  • 403 - Доступ запрещен
  • 404 - Ресурс не найден
  • 429 - Слишком много запросов
  • 500 - Внутренняя ошибка сервера

1.2. Аутентификация:

1.2.1. Заголовки авторизации:

http

Authorization: Bearer {api_key}

Content-Type: application/json

X-API-Key: your_api_key_here

1.2.2. Получение токена доступа:

http

POST /oauth/token

{

  "grant_type": "client_credentials",

  "client_id": "your_client_id",

  "client_secret": "your_client_secret"

}

2. ОСНОВНЫЕ ЭНДПОЙНТЫ API

2.1. Работа с товарами:

2.1.1. Получение списка товаров:

http

GET /products

Parameters:

  - category_id (optional)

  - limit (default: 50)

  - offset (default: 0)

  - search (optional)

  - sort_by (price, name, rating)

2.1.2. Получение информации о товаре:

http

GET /products/{product_id}

2.1.3. Создание товара:

http

POST /products

{

  "name": "Название товара",

  "description": "Описание товара",

  "price": 1000,

  "category_id": 1,

  "stock_quantity": 10

}

2.2. Управление заказами:

2.2.1. Получение списка заказов:

http

GET /orders

Parameters:

  - status (pending, confirmed, shipped, delivered, cancelled)

  - start_date (YYYY-MM-DD)

  - end_date (YYYY-MM-DD)

2.2.2. Создание заказа:

http

POST /orders

{

  "customer_email": "customer@example.com",

  "items": [

    {

      "product_id": 123,

      "quantity": 2

    }

  ],

  "shipping_address": {

    "address": "ул. Примерная, д. 1",

    "city": "Краснодар",

    "postal_code": "350000"

  }

}

3. ЛИМИТЫ И ОГРАНИЧЕНИЯ

3.1. Rate Limiting:

3.1.1. Лимиты по типам API:

  • Публичные API: 1000 запросов/час
  • Приватные API: 10000 запросов/час
  • Административные API: 50000 запросов/час

3.1.2. Заголовки лимитов:

http

X-RateLimit-Limit: 1000

X-RateLimit-Remaining: 999

X-RateLimit-Reset: 1640995200


ПРИЛОЖЕНИЕ 2 к Политике использования API ФОРМЫ ЗАЯВОК НА ДОСТУП К API

1. ФОРМА ЗАЯВКИ ДЛЯ ФИЗИЧЕСКИХ ЛИЦ

Дата подачи: «__» ________ 202____ г.

1.1. Личные данные:

  • ФИО: _______________
  • Email: _______________
  • Телефон: _______________
  • Дата рождения: _______________

1.2. Информация о проекте:

  • Название проекта: _______________
  • Цель использования API: _______________
  • Описание функционала: _______________
  • Ожидаемое количество запросов/мес: _______

1.3. Технические данные:

  • IP-адреса для белого списка: _______________
  • Callback URL (если требуется): _______________
  • Технологический стек: _______________

Согласия: [ ] Согласен с Политикой использования API [ ] Согласен на обработку персональных данных [ ] Обязуюсь соблюдать лимиты и ограничения

Подпись: ___________________

2. ФОРМА ЗАЯВКИ ДЛЯ ЮРИДИЧЕСКИХ ЛИЦ

Дата подачи: «__» ________ 202 г.

2.1. Данные организации:

  • Наименование: _______________
  • ИНН: _______________
  • ОГРН: _______________
  • Юридический адрес: _______________

2.2. Контактные лица:

  • Руководитель: _______________
  • Технический специалист: _______________
  • Email для уведомлений: _______________

2.3. Бизнес-информация:

  • Сфера деятельности: _______________
  • Количество интеграций: _______
  • Планируемый трафик: _______ запросов/мес

2.4. Технические требования:

  • Необходимые эндпоинты: _______________
  • Требуемый уровень доступа: _______________
  • Часовой пояс для уведомлений: _______________

Подпись руководителя: ___________________ Печать организации

ПРИЛОЖЕНИЕ 3 к Политике использования API ПОЛИТИКА БЕЗОПАСНОСТИ ПРИ РАБОТЕ С API

1. ТРЕБОВАНИЯ К ХРАНЕНИЮ КЛЮЧЕЙ

1.1. Защита учетных данных:

1.1.1. Хранение ключей API:

  • Запрещено хранить в открытом виде в коде
  • Использовать защищенные хранилища (HashiCorp Vault, AWS Secrets Manager)
  • Регулярная ротация ключей (каждые 90 дней)
  • Раздельное хранение client_id и client_secret

1.1.2. Передача ключей:

  • Только через защищенные каналы (HTTPS, SFTP)
  • Запрещена передача по email в открытом виде
  • Использование временных токенов для разработки

2. ПРОЦЕДУРЫ БЕЗОПАСНОСТИ

2.1. Мониторинг и логирование:

2.1.1. Обязательное логирование:

  • Все запросы к API
  • Попытки неавторизованного доступа
  • Изменения в конфигурации доступа
  • Использование лимитов

2.1.2. Алертинг:

  • Уведомление о подозрительной активности
  • Превышение лимитов запросов
  • Попытки доступа с неразрешенных IP-адресов

2.2. Инцидент-менеджмент:

2.2.1. Действия при компрометации ключа:

  • Немедленная блокировка ключа через панель управления
  • Уведомление службы безопасности Платформы Все Свои
  • Аудит действий, совершенных скомпрометированным ключом
  • Выпуск нового ключа

2.2.2. Процедура восстановления:

  • Подача заявки на перевыпуск ключа
  • Проверка причин компрометации
  • Обновление политик безопасности

3. РЕКОМЕНДАЦИИ ПО РАЗРАБОТКЕ

3.1. Паттерны разработки:

3.1.1. Обработка ошибок:

  • Корректная обработка HTTP статусов
  • Retry logic с экспоненциальной backoff задержкой
  • Ведение журнала ошибок для отладки

3.1.2. Оптимизация запросов:

  • Кэширование часто запрашиваемых данных
  • Пакетные запросы при массовых операциях
  • Использование webhooks для получения обновлений

3.1.3. Пример кода для обработки ошибок:

python

import requests

import time

from typing import Optional

def make_api_request(url: str, api_key: str, max_retries: int = 3) -> Optional[dict]:

    headers = {

        'Authorization': f'Bearer {api_key}',

        'Content-Type': 'application/json'

    }

    

    for attempt in range(max_retries):

        try:

            response = requests.get(url, headers=headers)

            

            if response.status_code == 200:

                return response.json()

            elif response.status_code == 429:

                # Rate limiting - wait and retry

                time.sleep(2 ** attempt)  # Exponential backoff

            else:

                # Log error and break

                print(f"API error: {response.status_code}")

                break

                

        except requests.exceptions.RequestException as e:

            print(f"Request failed: {e}")

            time.sleep(2 ** attempt)

    

    return None


Следующие страницы