Elencare il catalogo completo
Senza limit restituisce un array. Con limit (1–100) restituisce {items,total}; offset parte da 0 ed è ignorato senza limit. Non è un cursore di sincronizzazione. Ordine per nome. Include opzioni, unità non ritirate, risorse richieste, periodi attivi e prezzi; include anche prodotti non ACTIVE.
/api/v1/productsAuthorization
Query
curl "https://api.takoconnect.com/api/v1/products" \
-H "Authorization: Bearer $TAKO_API_KEY"[
{
"id": "entity-id",
"tenantId": "tenant-id",
"name": "name",
"reference": "tour-di-esempio",
"createdAt": "2030-06-15T08:00:00.000Z",
"updatedAt": "2030-06-15T08:00:00.000Z",
"supplierId": "supplier-id",
"shortDescription": "shortDescription",
"description": "description",
"features": [
{
"type": "type",
"shortDescription": "shortDescription"
}
],
"depositPercentage": 0,
"durationMinutesFrom": 0,
"durationMinutesTo": 0,
"timezone": "timezone",
"locale": "locale",
"availabilityType": "START_TIME",
"status": "ACTIVE",
"metadata": {},
"options": [
{
"id": "entity-id",
"tenantId": "tenant-id",
"name": "name",
"reference": "tour-di-esempio",
"createdAt": "2030-06-15T08:00:00.000Z",
"updatedAt": "2030-06-15T08:00:00.000Z",
"productId": "product-id",
"isDefault": true,
"durationMinutes": 0,
"sortOrder": 0,
"pricingPer": "UNIT",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "cancellationCutoffUnit",
"bookingCutoffMinutes": 0,
"requiredContactFields": [
"requiredContactFields"
],
"restrictions": {},
"metadata": {},
"units": [
{
"id": "entity-id",
"tenantId": "tenant-id",
"name": "name",
"reference": "tour-di-esempio",
"createdAt": "2030-06-15T08:00:00.000Z",
"updatedAt": "2030-06-15T08:00:00.000Z",
"optionId": "option-id",
"type": "ADULT",
"requiredContactFields": [
null
],
"restrictions": {},
"metadata": {},
"deletedAt": "2030-06-15T08:00:00.000Z"
}
],
"resourceRequirements": [
{
"id": "entity-id",
"tenantId": "tenant-id",
"optionId": "option-id",
"resourceId": "resource-id",
"quantity": 0,
"maxQuantity": 0
}
],
"availabilityPeriods": [
{
"id": "entity-id",
"tenantId": "tenant-id",
"optionId": "option-id",
"startMonthDay": "startMonthDay",
"endMonthDay": "endMonthDay",
"weekdays": [
null
],
"startTimes": [
null
],
"label": "label",
"createdAt": "2030-06-15T08:00:00.000Z",
"updatedAt": "2030-06-15T08:00:00.000Z",
"active": true,
"pricingBasis": "pricingBasis",
"currency": "EUR",
"prices": {}
}
],
"pricingPeriods": [
{
"id": "entity-id",
"tenantId": "tenant-id",
"optionId": "option-id",
"startMonthDay": "startMonthDay",
"endMonthDay": "endMonthDay",
"weekdays": [
null
],
"startTimes": [
null
],
"label": "label",
"createdAt": "2030-06-15T08:00:00.000Z",
"updatedAt": "2030-06-15T08:00:00.000Z",
"color": "color",
"retailPrices": {
"unit-id": null
},
"retailPriceTiers": [
null
]
}
]
}
],
"photos": [
{
"id": "entity-id",
"sortOrder": 0,
"contentType": "contentType",
"updatedAt": "2030-06-15T08:00:00.000Z"
}
]
}
]Autorizzazione
AuthorizationBearer <token>
Chiave tenant emessa dalla dashboard o da POST /api-keys, usata come Bearer token.
Scope richiesti: catalog:read
In: header
Query
limit?integer
min 1max 100
offset?integer
min 0
supplierId?string
minLength 1
search?string
minLength 1
Risposte
200object[] | object
Operazione riuscita. Lo schema descrive il JSON restituito.
Mostra schema
Variante 1
itemsobject[]
Mostra proprietà
idstring
tenantIdstring
namestring
referencestring
createdAtdatetime
date-time
updatedAtdatetime
date-time
supplierIdstring
shortDescriptionstring | null
descriptionstring | null
featuresobject[] | null
Mostra proprietà
typestring
shortDescriptionstring
depositPercentageinteger
durationMinutesFrominteger | null
durationMinutesTointeger | null
timezonestring | null
localestring | null
availabilityTypeenum
START_TIMEOPENING_HOURS
statusenum
ACTIVEINACTIVE
metadataany
Valore JSON libero; non usare per dedurre campi strutturati non documentati.
optionsobject[]
Mostra proprietà
idstring
tenantIdstring
namestring
referencestring
createdAtdatetime
date-time
updatedAtdatetime
date-time
productIdstring
isDefaultboolean
durationMinutesinteger
sortOrderinteger
pricingPerenum | null
UNITRESOURCEBOOKING
cancellationCutoffAmountinteger
cancellationCutoffUnitstring
bookingCutoffMinutesinteger
requiredContactFieldsstring[]
restrictionsany
Valore JSON libero; non usare per dedurre campi strutturati non documentati.
metadataany
Valore JSON libero; non usare per dedurre campi strutturati non documentati.
unitsobject[]
resourceRequirementsobject[]
availabilityPeriodsobject[]
pricingPeriodsobject[]
photosobject[]
Mostra proprietà
idstring
sortOrderinteger
contentTypestring
updatedAtdatetime
date-time
totalinteger
400object
Validazione o regola di dominio non soddisfatta; correggere la richiesta.
401object
Credenziale assente, revocata, scaduta o non valida.
403object
Scope, ruolo o tipo di credenziale non consentito.
404object
Risorsa assente o non accessibile nel perimetro risolto.
409object
Conflitto di stato, capacità, versione o riferimenti; rileggere lo stato e correggere.
500object
Errore interno. Prima di ripetere una mutazione verificarne l'esito.