Risorse e disponibilità
Capacità autoritativa per risorsa, calendario ricorrente, override e blocchi.
Risorse
Una risorsa ha quantity e capacityPerResource: quattro veicoli da due posti producono otto posti totali. Risorsa e opzione collegata devono appartenere allo stesso fornitore.
curl -X POST "$TAKO_API_URL/api/v1/options/{optionId}/resource-requirements" \
-H "Authorization: Bearer $TAKO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"resourceId": "resource-id",
"quantity": 1,
"maxQuantity": null
}'Il collegamento è un upsert: richiamarlo aggiorna quantity/maxQuantity. maxQuantity limita il numero di risorse del pool utilizzabili dall’opzione nello slot.
Calendario ricorrente
curl -X POST "$TAKO_API_URL/api/v1/options/{optionId}/availability-periods" \
-H "Authorization: Bearer $TAKO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"startMonthDay": "04-01",
"endMonthDay": "10-31",
"weekdays": [
1,
2,
3,
4,
5,
6
],
"startTimes": [
"09:00",
"15:00"
],
"label": "Stagione estiva"
}'Date annuali MM-DD inclusive; 12-01 → 02-28 attraversa Capodanno. Giorni da 0 (domenica) a 6 (sabato); orari locali nel fuso del prodotto/fornitore. Gli slot vengono materializzati quando leggi la disponibilità o crei una prenotazione: non devi precaricare ogni giorno. La DELETE disattiva il periodo senza annullare le prenotazioni.
Override e blocchi
curl -X POST "$TAKO_API_URL/api/v1/resources/{resourceId}/inventory" \
-H "Authorization: Bearer $TAKO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"slots": [
{
"startAt": "2030-06-15T07:00:00Z",
"capacity": 8
}
]
}'curl -X POST "$TAKO_API_URL/api/v1/availability-blocks" \
-H "Authorization: Bearer $TAKO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"productId": "product-id",
"startAt": "2030-06-15T00:00:00Z",
"endAt": "2030-06-16T00:00:00Z"
}'capacity è capacità totale in posti, non disponibilità residua. In alternativa quantity indica il numero di risorse: non inviare entrambi. L’upsert non cambia reserved; 409 sotto il riservato. Cambiare la dimensione del pool aggiorna tutti gli slot, sovrascrivendo anche gli override.
Il blocco chiude nuove partenze del prodotto in [startAt,endAt) e conserva le prenotazioni esistenti.
Lettura
GET /availability restituisce startAt, endAt, cutoffAt, available, capacity, vacancies, maxUnits, manual e risorse residue. Non riserva capacità e non restituisce prezzi. Usa intervalli limitati alle date necessarie.