Налаштування Swagger UI / ReDoc для інтерактивної документації API

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування Swagger UI / ReDoc для інтерактивної документації API
Проста
від 1 робочого дня до 3 робочих днів
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування Swagger UI / ReDoc для інтерактивної документації API

Swagger UI та ReDoc перетворюють OpenAPI специфікацію на читаємо документацію з прикладами та можливістю протестувати API прямо з браузера. Це не альтернативи — вони вирішують різні завдання та часто використовуються разом.

Swagger UI vs ReDoc

Swagger UI — інтерактивна документація з кнопкою «Try it out». Розробник вводить параметри та відправляє реальний запит до API прямо з браузера. Незамінний при розробці та відладці інтеграцій.

ReDoc — красивий читаємий довідник. Трьохколоночний layout: навігація, опис, приклад. Нема «Try it out», зато краще читається на мобільних та добре друкується. Підходить для публічної документації.

Scalar — сучасна альтернатива обом: красота ReDoc + інтерактивність Swagger UI. Підтримує OAS 3.1. Рекомендується для нових проектів.

Підключення до бекенду

Express.js:

import swaggerUi from 'swagger-ui-express';
import swaggerJsdoc from 'swagger-jsdoc';

const spec = swaggerJsdoc({
  definition: {
    openapi: '3.1.0',
    info: { title: 'My API', version: '1.0.0' },
  },
  apis: ['./routes/**/*.js'],
});

app.use('/docs', swaggerUi.serve, swaggerUi.setup(spec, {
  customCss: '.swagger-ui .topbar { display: none }',
  swaggerOptions: { persistAuthorization: true },
}));

FastAPI — Swagger UI доступен на /docs, ReDoc на /redoc автоматично. Для Scalar:

from scalar_fastapi import get_scalar_api_reference

@app.get("/scalar", include_in_schema=False)
async def scalar_html():
    return get_scalar_api_reference(openapi_url="/openapi.json", title="API Reference")

Laravel + Scramble — пакет автоматично реєструє маршрут /docs/api з інтерфейсом Stoplight Elements.

Кастомізація та аутентифікація

Для API з Bearer token аутентифікацією налаштовуємо persistAuthorization в Swagger UI — токен зберігається між перезагрузками сторінки. У ReDoc додаємо x-logo та x-tagGroups в секцію info OpenAPI специфікації для організації навігації по групам.

info:
  x-logo:
    url: 'https://example.com/logo.png'
  x-tagGroups:
    - name: Core
      tags: [users, projects]
    - name: Billing
      tags: [subscriptions, invoices]

Хостинг документації

Три варіанти: вбудувати в додаток (шлях /docs), задеплоїти як окремий статичний сайт, використовувати hosted сервіс (SwaggerHub, Readme.io).

Статичний варіант — найнадійніший. Експортуємо OpenAPI spec у CI, деплоїм Scalar/ReDoc як статику на GitHub Pages або Cloudflare Pages.

Графік

Підключення Swagger UI або ReDoc до існуючого додатку — 0,5–1 день. Настройка кастомного стилю та аутентифікації — 1 день. Міграція на Scalar з настройкою кастомного домену — 1–2 дні.