Files
Luncher/types/api.yml
T
batmanisko 5c048fe1f1
CI / Generate TypeScript types (push) Successful in 13s
CI / Server unit tests (push) Successful in 25s
CI / Build server (push) Successful in 28s
CI / Build client (push) Successful in 41s
CI / Playwright E2E tests (push) Successful in 1m47s
CI / Build and push Docker image (push) Successful in 53s
CI / Notify (push) Successful in 2s
feat: sledování objednávek přes Wolt
Vedle Bolt Food jde nově sledovat i objednávka z Woltu — stačí u objednané
skupiny vložit odkaz z track.wolt.com. Logika sledování je zobecněná do
registru rozvozových služeb (trackingProviders.ts): každá služba umí vytáhnout
kód ze sdílecího odkazu a dotázat se svého API, scheduler i stepper jsou společné.

- pole skupiny bolt* přejmenována na tracking* + nové trackingProvider
- endpoint /groups/setBoltTracking → /groups/setTracking
- Wolt: čas doručení z delivery_eta v časové zóně objednávky, 404 ukončí
  sledování, stav kurýra odvozen z is_delivering/is_delivering_other_order
- DEV simulace zůstává jen pro Bolt Food
2026-08-24 11:27:56 +02:00

189 lines
5.2 KiB
YAML

openapi: 3.0.4
info:
title: Luncher API
version: 1.0.0
servers:
- url: /api
paths:
# Obecné (/api)
/login:
$ref: "./paths/login.yml"
/qr:
$ref: "./paths/getPizzaQr.yml"
/qr/generate:
$ref: "./paths/qr/generate.yml"
/data:
$ref: "./paths/getData.yml"
/config:
$ref: "./paths/config/config.yml"
# Restaurace a jídla (/api/food)
/food/addChoice:
$ref: "./paths/food/addChoice.yml"
/food/removeChoice:
$ref: "./paths/food/removeChoice.yml"
/food/updateNote:
$ref: "./paths/food/updateNote.yml"
/food/removeChoices:
$ref: "./paths/food/removeChoices.yml"
/food/changeDepartureTime:
$ref: "./paths/food/changeDepartureTime.yml"
/food/jdemeObed:
$ref: "./paths/food/jdemeObed.yml"
/food/updateBuyer:
$ref: "./paths/food/updateBuyer.yml"
# Pizza day (/api/pizzaDay)
/pizzaDay/create:
$ref: "./paths/pizzaDay/create.yml"
/pizzaDay/delete:
$ref: "./paths/pizzaDay/delete.yml"
/pizzaDay/lock:
$ref: "./paths/pizzaDay/lock.yml"
/pizzaDay/unlock:
$ref: "./paths/pizzaDay/unlock.yml"
/pizzaDay/finishOrder:
$ref: "./paths/pizzaDay/finishOrder.yml"
/pizzaDay/finishDelivery:
$ref: "./paths/pizzaDay/finishDelivery.yml"
/pizzaDay/add:
$ref: "./paths/pizzaDay/addPizza.yml"
/pizzaDay/remove:
$ref: "./paths/pizzaDay/removePizza.yml"
/pizzaDay/updatePizzaDayNote:
$ref: "./paths/pizzaDay/updatePizzaDayNote.yml"
/pizzaDay/updatePizzaFee:
$ref: "./paths/pizzaDay/updatePizzaFee.yml"
/pizzaDay/dismissQr:
$ref: "./paths/pizzaDay/dismissQr.yml"
# Notifikace (/api/notifications)
/notifications/settings:
$ref: "./paths/notifications/settings.yml"
# Easter eggy (/api/easterEggs)
/easterEggs:
$ref: "./paths/easterEggs/easterEggs.yml"
/easterEggs/{url}:
$ref: "./paths/easterEggs/easterEgg.yml"
# Statistiky (/api/stats)
/stats:
$ref: "./paths/stats/stats.yml"
/stats/export:
$ref: "./paths/stats/export.yml"
# Návrhy na vylepšení (/api/suggestions)
/suggestions/list:
$ref: "./paths/suggestions/list.yml"
/suggestions/add:
$ref: "./paths/suggestions/add.yml"
/suggestions/vote:
$ref: "./paths/suggestions/vote.yml"
/suggestions/delete:
$ref: "./paths/suggestions/delete.yml"
# Chytání motýlků (/api/butterflies)
/butterflies:
$ref: "./paths/butterflies/getStats.yml"
/butterflies/catch:
$ref: "./paths/butterflies/catch.yml"
/butterflies/repair:
$ref: "./paths/butterflies/repair.yml"
/butterflies/killWasp:
$ref: "./paths/butterflies/killWasp.yml"
/butterflies/repellent:
$ref: "./paths/butterflies/repellent.yml"
/butterflies/tear:
$ref: "./paths/butterflies/tear.yml"
/butterflies/robbery:
$ref: "./paths/butterflies/robbery.yml"
/butterflies/defeatThief:
$ref: "./paths/butterflies/defeatThief.yml"
/butterflies/caterpillarAte:
$ref: "./paths/butterflies/caterpillarAte.yml"
/butterflies/defeatCaterpillar:
$ref: "./paths/butterflies/defeatCaterpillar.yml"
/butterflies/moth:
$ref: "./paths/butterflies/moth.yml"
/butterflies/inspectionFailed:
$ref: "./paths/butterflies/inspectionFailed.yml"
/butterflies/buyPremium:
$ref: "./paths/butterflies/buyPremium.yml"
/butterflies/waspSpray:
$ref: "./paths/butterflies/waspSpray.yml"
/butterflies/insurance:
$ref: "./paths/butterflies/insurance.yml"
/butterflies/buyUpgrade:
$ref: "./paths/butterflies/buyUpgrade.yml"
/butterflies/achievements:
$ref: "./paths/butterflies/achievements.yml"
/butterflies/leaderboard:
$ref: "./paths/butterflies/leaderboard.yml"
# Changelog (/api/changelogs)
/changelogs:
$ref: "./paths/changelogs/getChangelogs.yml"
# Skupiny objednávek (/api/groups)
/groups/dates:
$ref: "./paths/groups/getOrderDates.yml"
/groups/create:
$ref: "./paths/groups/createGroup.yml"
/groups/delete:
$ref: "./paths/groups/deleteGroup.yml"
/groups/addMember:
$ref: "./paths/groups/addMember.yml"
/groups/removeMember:
$ref: "./paths/groups/removeMember.yml"
/groups/updateMember:
$ref: "./paths/groups/updateMember.yml"
/groups/setState:
$ref: "./paths/groups/setState.yml"
/groups/updateTimes:
$ref: "./paths/groups/updateTimes.yml"
/groups/setTracking:
$ref: "./paths/groups/setTracking.yml"
/groups/updateFees:
$ref: "./paths/groups/updateFees.yml"
# Správa obchodů (/api/stores)
/stores:
$ref: "./paths/stores/listStores.yml"
/stores/add:
$ref: "./paths/stores/addStore.yml"
/stores/delete:
$ref: "./paths/stores/deleteStore.yml"
# DEV endpointy (/api/dev)
/dev/generate:
$ref: "./paths/dev/generate.yml"
/dev/clear:
$ref: "./paths/dev/clear.yml"
/dev/bolt/simulate:
$ref: "./paths/dev/boltSimulate.yml"
/dev/bolt/advance:
$ref: "./paths/dev/boltAdvance.yml"
/dev/bolt/state:
$ref: "./paths/dev/boltState.yml"
/dev/bolt/poll:
$ref: "./paths/dev/boltPoll.yml"
components:
schemas:
$ref: "./schemas/_index.yml"
responses:
ClientDataResponse:
description: Aktuální data pro klienta
content:
application/json:
schema:
$ref: "./schemas/_index.yml#/ClientData"
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
security:
- bearerAuth: []