✈️ Flight Search API

GraphQL API для поиска авиабилетов с фильтрацией, сортировкой и пагинацией Работает

🔍 Поиск билетов

Ищите авиабилеты по городам вылета/прибытия, датам, авиакомпаниям и ценам

Пример GraphQL запроса:
query {
  searchOffers(
    departure: "Москва"
    arrival: "Стамбул"
    departureDate: "2024-06-01"
    maxPrice: 500
    sortBy: "price"
    limit: 10
  ) {
    offers {
      id
      departure
      arrival
      departureDate
      price {
        total
      }
      marketingCompany
      stops
    }
    total
    pages
  }
}

📊 Статистика

Получайте статистику по предложениям, городам и авиакомпаниям

Пример запроса статистики:
query {
  stats {
    totalOffers
    departureCities
    arrivalCities
    airlines
    minPrice
    avgPrice
  }
  
  cities(type: "departure")
  airlines
}

CRUD операции

Создание, чтение, обновление и удаление предложений авиабилетов

Пример создания предложения:
mutation {
  createOffer(input: {
    departure: "Москва"
    arrival: "Париж"
    departureDate: "2024-06-15T10:00:00Z"
    arrivalDate: "2024-06-15T14:30:00Z"
    marketingCompany: "Аэрофлот"
    operatingCompany: "Аэрофлот"
    price: {
      base: 300
      tax: 50
      total: 350
    }
    flightNumber: "SU123"
    stops: 0
  }) {
    id
    price {
      total
    }
  }
}
POST /graphql - GraphQL endpoint с GraphiQL
GET /health - Проверка здоровья сервиса
GET /api/offers - REST API для обратной совместимости
🎮 Открыть GraphiQL Sandbox 💚 Проверить Health Status

Порт: 4000 | База данных: PostgreSQL | Тестовых предложений: 50+

Используйте GraphiQL для тестирования API с автодополнением и документацией