BoxLatviaIzstrādātājiem
Pieprasīt piekļuvi
API atsauce

Telpas

Telpa ir noliktavas vienība, ko izīrējat: izmērs, cena un identisku telpu skaits. Telpas atrodas lokācijā.

Piezīme
Telpas sākas kā DRAFT (melnraksts). API var tikai lūgt izskatīšanu (submit); publicē BoxLatvia darbinieki. Skatiet Publicēšana.

#Telpas objekts

NosaukumsTipsApraksts
iduuidBoxLatvia identifikators.
external_idstring | nullJūsu identifikators.
location_iduuid | nullLokācija, kurai telpa pieder.
namestringNosaukums.
descriptionstring | nullApraksts.
statusstringDRAFT (melnraksts), REVIEW (izskatīšanā), PUBLISHED (publicēta) vai UNPUBLISHED. Tikai lasāms: izmantojiet submit un withdraw.
price promotional_pricenumber | nullCena par periodu un akcijas cena, ja tāda ir.
price_period_1 _3 _6 _12number | nullFiksētas kopsummas 1, 3, 6 vai 12 periodu nomai, ja tās norādītas.
price_unitstring | nullCenas mērvienības kods.
size size_length size_width size_height door_width door_heightnumber | nullPlatība m², iekšējie un durvju izmēri metros.
total_units available_unitsinteger | nullIdentisku telpu skaits un cik no tām ir brīvas rezervēšanai.
max_advance_daysinteger | nullCik dienas uz priekšu klients drīkst rezervēt.
featuresstring[]Ērtību kodi.
missingstring[]Kas vēl vajadzīgs, lai telpu varētu iesniegt izskatīšanai: jebkas no description, price, price_unit, size, features.
created_at updated_atdatetimeISO 8601, UTC.
Piemērs
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 29.9,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 10,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T09:30:12.418Z"
}

#Galapunkti

#Telpu saraksts

GET/v1/boxesboxes:read

Jūsu telpas, vecākās pirmās, pa vienai lapai.

Vaicājuma parametri

NosaukumsTipsApraksts
limitintegerLapas lielums, no 1 līdz 200. Noklusējums ir 50.
cursorstringIepriekšējās lapas next_cursor. Neveidojiet kursorus paši.
location_iduuidTikai šīs lokācijas telpas.
external_idstringTikai telpa ar šo jūsu identifikatoru.
statusstringDRAFT, REVIEW, PUBLISHED vai UNPUBLISHED.

Piemērs

Vienas lokācijas telpas, pa vienai lapā
curl "$API/v1/boxes?location_id=9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3&limit=1" \
  -u "$CLIENT_ID:$CLIENT_SECRET"
200 OK
{
  "data": [
    {
      "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
      "external_id": "SKU-3M",
      "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
      "name": "Box 3 m²",
      "description": "Sausa un apsildāma telpa pirmajā stāvā",
      "status": "DRAFT",
      "price": 29.9,
      "promotional_price": null,
      "price_period_1": null,
      "price_period_3": 79,
      "price_period_6": null,
      "price_period_12": 290,
      "price_unit": "menesi",
      "size": 3,
      "size_length": 2,
      "size_width": 1.5,
      "size_height": 2.4,
      "door_width": 0.9,
      "door_height": 2,
      "total_units": 10,
      "available_units": 10,
      "max_advance_days": 60,
      "features": [
        "apkure",
        "viedatslega"
      ],
      "missing": [],
      "created_at": "2026-11-07T09:30:12.418Z",
      "updated_at": "2026-11-07T09:30:12.418Z"
    }
  ],
  "next_cursor": "WyIyMDI2LTExLTA2IDEwOjAwOjAwLjAwMDAxMyswMCIsIjdiOGEzODI3LTI2M2UtNGMyMC1iNDQ3LWFkMjE5YmU1NWE0YyJd"
}

Kļūdas

StatussKad
422location_id vai status nav derīgs.

#Izveidot telpu

POST/v1/boxesboxes:write

Izveido telpu kā DRAFT (melnrakstu). Vajadzīgs name un lokācija; pārējo varat pievienot vēlāk.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Galvenes

NosaukumsTipsApraksts
Idempotency-KeystringNeobligāta. No 1 līdz 200 drukājamām rakstzīmēm. Atkārtots pieprasījums ar to pašu atslēgu atgriež sākotnējo rezultātu, nevis izveido dublikātu. Skatiet drošu atkārtošanu.

Pieprasījuma saturs

NosaukumsTipsApraksts
name obligātsstringLīdz 255 rakstzīmēm. Obligāts, veidojot telpu.
location_iduuidLokācija, kurā telpa atrodas. Veidojot telpu, nepieciešams viens no location_id vai location_external_id; vēlāk tas pārvieto telpu uz citu jūsu lokāciju.
location_external_idstringTas pats, bet ar jūsu pašu lokācijas identifikatoru. Nesūtiet kopā ar location_id.
descriptionstring | nullLīdz 255 rakstzīmēm.
external_idstringJūsu pašu identifikators, līdz 100 rakstzīmēm, unikāls starp jūsu telpām. Iestatāms vienu reizi.
pricenumber | nullCena par periodu, lielāka par 0, ne vairāk kā 2 decimālzīmes (mēs nekad nenoapaļojam jūsu vietā).
promotional_pricenumber | nullAkcijas cena. Tai jābūt zemākai par price.
price_period_1 _3 _6 _12number | nullNeobligāta fiksēta kopsumma par 1, 3, 6 vai 12 periodu nomu. Ja tā ir norādīta, klients par attiecīgo periodu maksā tieši šo summu.
price_unitstring | nullCenas mērvienības kods (mēnesī, nedēļā), skatiet Atsauces datus.
sizenumber | nullPlatība m², lielāka par 0, noapaļota līdz 2 decimālzīmēm.
size_length size_width size_heightnumber | nullIekšējie izmēri metros.
door_width door_heightnumber | nullDurvju izmēri metros.
total_unitsinteger | nullCik identisku telpu jums ir, 0 vai vairāk.
available_unitsinteger | nullCik telpu šobrīd ir brīvas. Nevar pārsniegt total_units.
max_advance_daysinteger | nullCik dienas uz priekšu klients drīkst rezervēt, no 1 līdz 730.
featuresstring[]Ērtību kodi, skatiet Atsauces datus. Aizvieto visu kopu.

Piemēri

Pilnībā aizpildīta telpa
curl -X POST "$API/v1/boxes" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "location_external_id": "WH-IMANTA",
  "external_id": "SKU-3M",
  "price": 29.9,
  "price_unit": "menesi",
  "price_period_3": 79,
  "price_period_12": 290,
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 10,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ]
}'
201 CreatedETag: W/"2daf00d492dd4f4cd82f2113"Location: https://api.boxlatvia.lv/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 29.9,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 10,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T09:30:12.418Z"
}
Tikai nosaukums un lokācija

missing parāda, kas telpai vēl vajadzīgs, lai to varētu iesniegt.

curl -X POST "$API/v1/boxes" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Box 5 m²",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3"
}'
201 CreatedETag: W/"9c02eeec9c920097d539244a"Location: https://api.boxlatvia.lv/v1/boxes/9d7f53d3-a9cd-4ee1-b9cf-470a572f8b4e
{
  "id": "9d7f53d3-a9cd-4ee1-b9cf-470a572f8b4e",
  "external_id": null,
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 5 m²",
  "description": null,
  "status": "DRAFT",
  "price": null,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": null,
  "price_period_6": null,
  "price_period_12": null,
  "price_unit": null,
  "size": null,
  "size_length": null,
  "size_width": null,
  "size_height": null,
  "door_width": null,
  "door_height": null,
  "total_units": null,
  "available_units": null,
  "max_advance_days": null,
  "features": [],
  "missing": [
    "description",
    "price",
    "price_unit",
    "size",
    "features"
  ],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T09:30:12.418Z"
}
Nederīgas vērtības
curl -X POST "$API/v1/boxes" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Box 2 m²",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "price": 10.005,
  "total_units": 1.5
}'
422 Unprocessable Content
{
  "type": "https://api.boxlatvia.lv/problems/validation-failed",
  "title": "Validation failed",
  "status": 422,
  "detail": "One or more fields are invalid.",
  "request_id": "88e536cb-521e-4728-802c-8a7b667fa4af",
  "errors": [
    {
      "field": "price",
      "message": "must have at most 2 decimals"
    },
    {
      "field": "total_units",
      "message": "Expected integer, received float"
    }
  ]
}
Noteikumi starp laukiem un nezināmi kodi

Šīs pārbaudes vērtē galīgās vērtības kopā: akcijas cenu, pieejamo telpu skaitu, kodus.

curl -X POST "$API/v1/boxes" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Box 2 m²",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "price": 10,
  "promotional_price": 12,
  "total_units": 5,
  "available_units": 8,
  "price_unit": "gadsimts",
  "features": [
    "sauna"
  ]
}'
422 Unprocessable Content
{
  "type": "https://api.boxlatvia.lv/problems/validation-failed",
  "title": "Validation failed",
  "status": 422,
  "detail": "One or more fields are invalid.",
  "request_id": "ce26822d-d546-4254-a374-08549ad6e04b",
  "errors": [
    {
      "field": "price_unit",
      "message": "is not a known price unit code"
    },
    {
      "field": "features",
      "message": "unknown or inactive feature code(s): sauna"
    },
    {
      "field": "promotional_price",
      "message": "must be lower than price"
    },
    {
      "field": "available_units",
      "message": "cannot be greater than total_units"
    }
  ]
}
Statusu nevar iestatīt
curl -X POST "$API/v1/boxes" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Box 2 m²",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "status": "PUBLISHED"
}'
422 Unprocessable Content
{
  "type": "https://api.boxlatvia.lv/problems/validation-failed",
  "title": "Validation failed",
  "status": 422,
  "detail": "One or more fields are invalid.",
  "request_id": "921b4ebd-4e17-4232-9475-c3e76ac97f43",
  "errors": [
    {
      "field": "status",
      "message": "cannot be set directly; use POST /v1/boxes/{id}/submit (or /withdraw)"
    }
  ]
}

Kļūdas

StatussKad
409external_id jau lieto cita jūsu telpa.
422Kāda vērtība ir nederīga, kods nav zināms, vai lokācija nav jūsu.

#Iegūt telpu

GET/v1/boxes/{id}boxes:read

Viena telpa ar ETag, kas vajadzīgs, lai to mainītu vai dzēstu.

Ceļa parametri

NosaukumsTipsApraksts
iduuidTelpas BoxLatvia identifikators.

Piemērs

Iegūšana
curl "$API/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022" \
  -u "$CLIENT_ID:$CLIENT_SECRET"
200 OKETag: W/"2daf00d492dd4f4cd82f2113"
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 29.9,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 10,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T09:30:12.418Z"
}

Kļūdas

StatussKad
404Jums nav šādas telpas.

#Atjaunināt telpu

PATCH/v1/boxes/{id}boxes:write

Maina tikai tos laukus, ko nosūtāt, tostarp pieejamo telpu skaitu (available_units) un cenas. Izmaiņas publicētā telpā mājaslapā redzamas uzreiz.

Ceļa parametri

NosaukumsTipsApraksts
iduuidTelpas BoxLatvia identifikators.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Galvenes

NosaukumsTipsApraksts
If-Match obligātsstringETag no iepriekšēja GET, tieši tādā veidā, kā saņemts. 428, ja trūkst, 412, ja objekts pa to laiku mainījies. Skatiet nosacītus atjauninājumus.

Pieprasījuma saturs (jebkurš no laukiem)

NosaukumsTipsApraksts
name obligātsstringLīdz 255 rakstzīmēm. Obligāts, veidojot telpu.
location_iduuidLokācija, kurā telpa atrodas. Veidojot telpu, nepieciešams viens no location_id vai location_external_id; vēlāk tas pārvieto telpu uz citu jūsu lokāciju.
location_external_idstringTas pats, bet ar jūsu pašu lokācijas identifikatoru. Nesūtiet kopā ar location_id.
descriptionstring | nullLīdz 255 rakstzīmēm.
external_idstringJūsu pašu identifikators, līdz 100 rakstzīmēm, unikāls starp jūsu telpām. Iestatāms vienu reizi.
pricenumber | nullCena par periodu, lielāka par 0, ne vairāk kā 2 decimālzīmes (mēs nekad nenoapaļojam jūsu vietā).
promotional_pricenumber | nullAkcijas cena. Tai jābūt zemākai par price.
price_period_1 _3 _6 _12number | nullNeobligāta fiksēta kopsumma par 1, 3, 6 vai 12 periodu nomu. Ja tā ir norādīta, klients par attiecīgo periodu maksā tieši šo summu.
price_unitstring | nullCenas mērvienības kods (mēnesī, nedēļā), skatiet Atsauces datus.
sizenumber | nullPlatība m², lielāka par 0, noapaļota līdz 2 decimālzīmēm.
size_length size_width size_heightnumber | nullIekšējie izmēri metros.
door_width door_heightnumber | nullDurvju izmēri metros.
total_unitsinteger | nullCik identisku telpu jums ir, 0 vai vairāk.
available_unitsinteger | nullCik telpu šobrīd ir brīvas. Nevar pārsniegt total_units.
max_advance_daysinteger | nullCik dienas uz priekšu klients drīkst rezervēt, no 1 līdz 730.
featuresstring[]Ērtību kodi, skatiet Atsauces datus. Aizvieto visu kopu.

Piemērs

Atjaunināt pieejamību un cenu
curl -X PATCH "$API/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -H "If-Match: W/\"2daf00d492dd4f4cd82f2113\"" \
  -d '{
  "available_units": 7,
  "price": 31.5
}'
200 OKETag: W/"0a057478c432265c169ba82b"
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 31.5,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 7,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T14:05:41.092Z"
}

Kļūdas

StatussKad
404Jums nav šādas telpas.
412Telpa mainīta pēc tam, kad to nolasījāt.
422Kāda vērtība ir nederīga vai pārkāpj noteikumu starp laukiem.
428Trūkst If-Match.

#Izveidot vai atjaunināt pēc jūsu identifikatora

PUT/v1/boxes/by-external-id/{external_id}boxes:write

Izveido telpu, ja jūsu identifikators ir jauns (tad obligāti name un lokācija), citādi atjaunina nosūtītos laukus. Bez If-Match: ideāli piemērots pieejamības un cenu datu plūsmām.

Ceļa parametri

NosaukumsTipsApraksts
external_idstringJūsu identifikators telpai.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Pieprasījuma saturs

NosaukumsTipsApraksts
name obligātsstringLīdz 255 rakstzīmēm. Obligāts, veidojot telpu.
location_iduuidLokācija, kurā telpa atrodas. Veidojot telpu, nepieciešams viens no location_id vai location_external_id; vēlāk tas pārvieto telpu uz citu jūsu lokāciju.
location_external_idstringTas pats, bet ar jūsu pašu lokācijas identifikatoru. Nesūtiet kopā ar location_id.
descriptionstring | nullLīdz 255 rakstzīmēm.
external_idstringJūsu pašu identifikators, līdz 100 rakstzīmēm, unikāls starp jūsu telpām. Iestatāms vienu reizi.
pricenumber | nullCena par periodu, lielāka par 0, ne vairāk kā 2 decimālzīmes (mēs nekad nenoapaļojam jūsu vietā).
promotional_pricenumber | nullAkcijas cena. Tai jābūt zemākai par price.
price_period_1 _3 _6 _12number | nullNeobligāta fiksēta kopsumma par 1, 3, 6 vai 12 periodu nomu. Ja tā ir norādīta, klients par attiecīgo periodu maksā tieši šo summu.
price_unitstring | nullCenas mērvienības kods (mēnesī, nedēļā), skatiet Atsauces datus.
sizenumber | nullPlatība m², lielāka par 0, noapaļota līdz 2 decimālzīmēm.
size_length size_width size_heightnumber | nullIekšējie izmēri metros.
door_width door_heightnumber | nullDurvju izmēri metros.
total_unitsinteger | nullCik identisku telpu jums ir, 0 vai vairāk.
available_unitsinteger | nullCik telpu šobrīd ir brīvas. Nevar pārsniegt total_units.
max_advance_daysinteger | nullCik dienas uz priekšu klients drīkst rezervēt, no 1 līdz 730.
featuresstring[]Ērtību kodi, skatiet Atsauces datus. Aizvieto visu kopu.

Piemērs

Pieejamības atjauninājums no jūsu sistēmas

Sūtiet pilnu pašreizējo skaitli katru reizi, nekad nevis „mīnus viens”: klienti var rezervēt, kamēr darbojas jūsu datu plūsma.

curl -X PUT "$API/v1/boxes/by-external-id/SKU-3M" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "available_units": 6
}'
200 OKETag: W/"52a099edb61a3e0853024325"
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 31.5,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 6,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T14:05:41.092Z"
}

Kļūdas

StatussKad
422Kāda vērtība ir nederīga, vai jaunai telpai trūkst nosaukuma vai lokācijas.

#Iesniegt izskatīšanai

POST/v1/boxes/{id}/submitboxes:write

Lūdz BoxLatvia izskatīt un publicēt telpu (DRAFT → REVIEW). API nekad nepublicē: to dara BoxLatvia darbinieki.

Ja telpa jau ir izskatīšanā, nekas nemainās (200). If-Match šeit ir neobligāts.

Ceļa parametri

NosaukumsTipsApraksts
iduuidTelpas BoxLatvia identifikators.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Piemēri

Vēl nav gatava
curl -X POST "$API/v1/boxes/9d7f53d3-a9cd-4ee1-b9cf-470a572f8b4e/submit" \
  -u "$CLIENT_ID:$CLIENT_SECRET"
422 Unprocessable Content
{
  "type": "https://api.boxlatvia.lv/problems/box-incomplete",
  "title": "Box is incomplete",
  "status": 422,
  "detail": "Fill in description, price, price_unit, size, features before submitting this box for review.",
  "request_id": "f48c9ebd-fa4f-4b14-be21-b98154de2c1e",
  "missing": [
    "description",
    "price",
    "price_unit",
    "size",
    "features"
  ]
}
Iesniegta
curl -X POST "$API/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022/submit" \
  -u "$CLIENT_ID:$CLIENT_SECRET"
200 OKETag: W/"052468fbc2a710d35f026e30"
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "REVIEW",
  "price": 31.5,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 6,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T14:05:41.092Z"
}

Kļūdas

StatussKad
404Jums nav šādas telpas.
409Telpa jau ir publicēta: vispirms atsauciet to.
422Telpa nav pilnībā aizpildīta: missing parāda, kas vajadzīgs.

#Atsaukt

POST/v1/boxes/{id}/withdrawboxes:write

Izņem telpu no izskatīšanas vai no mājaslapas un atgriež statusā DRAFT. Melnraksts paliek melnraksts (200).

Ceļa parametri

NosaukumsTipsApraksts
iduuidTelpas BoxLatvia identifikators.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Piemērs

Atpakaļ uz melnrakstu
curl -X POST "$API/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022/withdraw" \
  -u "$CLIENT_ID:$CLIENT_SECRET"
200 OKETag: W/"f1fa55a0c2e2fd1d06f83296"
{
  "id": "c4883b4a-4e38-47bf-8a69-ef025917e022",
  "external_id": "SKU-3M",
  "location_id": "9d80d5f4-d17a-4f3e-99f6-4ab43b132bc3",
  "name": "Box 3 m²",
  "description": "Sausa un apsildāma telpa pirmajā stāvā",
  "status": "DRAFT",
  "price": 31.5,
  "promotional_price": null,
  "price_period_1": null,
  "price_period_3": 79,
  "price_period_6": null,
  "price_period_12": 290,
  "price_unit": "menesi",
  "size": 3,
  "size_length": 2,
  "size_width": 1.5,
  "size_height": 2.4,
  "door_width": 0.9,
  "door_height": 2,
  "total_units": 10,
  "available_units": 6,
  "max_advance_days": 60,
  "features": [
    "apkure",
    "viedatslega"
  ],
  "missing": [],
  "created_at": "2026-11-07T09:30:12.418Z",
  "updated_at": "2026-11-07T14:05:41.092Z"
}

Kļūdas

StatussKad
404Jums nav šādas telpas.

#Dzēst telpu

DELETE/v1/boxes/{id}boxes:write

Dzēš telpu un tās attēlus. Telpu, kurai ir pasūtījumi, dzēst nevar: iestatiet available_units uz 0, lai apturētu jaunas rezervācijas.

Ceļa parametri

NosaukumsTipsApraksts
iduuidTelpas BoxLatvia identifikators.

Vaicājuma parametri

NosaukumsTipsApraksts
validate_onlybooleantrue izpilda visas pārbaudes un parāda, kas notiktu, bet neko nesaglabā. Skatiet pārbaudi bez saglabāšanas.

Galvenes

NosaukumsTipsApraksts
If-Match obligātsstringETag no iepriekšēja GET, tieši tādā veidā, kā saņemts. 428, ja trūkst, 412, ja objekts pa to laiku mainījies. Skatiet nosacītus atjauninājumus.

Piemēri

Izdzēsta
curl -X DELETE "$API/v1/boxes/9d7f53d3-a9cd-4ee1-b9cf-470a572f8b4e" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "If-Match: W/\"9c02eeec9c920097d539244a\""
204 No Content
Atbildei nav satura
Telpai ir pasūtījumi
curl -X DELETE "$API/v1/boxes/c4883b4a-4e38-47bf-8a69-ef025917e022" \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -H "If-Match: W/\"f1fa55a0c2e2fd1d06f83296\""
409 Conflict
{
  "type": "https://api.boxlatvia.lv/problems/box-has-orders",
  "title": "Conflict",
  "status": 409,
  "detail": "This box has orders and cannot be deleted. Set available_units to 0 to stop new bookings.",
  "request_id": "d1f30eca-8286-4c7d-8244-c8f0cf9a56c3"
}

Kļūdas

StatussKad
404Jums nav šādas telpas.
409Telpai ir pasūtījumi.
412Telpa mainīta pēc tam, kad to nolasījāt.
428Trūkst If-Match.