# Parcels

Parcel management operations

## List parcels

> Retrieve a paginated list of parcels with filtering and sorting options

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"schemas":{"ParcelList":{"type":"object","properties":{"id":{"type":"integer","description":"Parcel ID"},"order_id":{"type":"integer","nullable":true,"description":"Order ID if parcel is part of an order"},"custom_id":{"type":"string","nullable":true,"description":"Custom parcel identifier"},"account_id":{"type":"integer","description":"Account ID"},"warehouse_id":{"type":"integer","description":"Warehouse contact ID"},"contact_id":{"type":"integer","description":"Contact ID"},"place_id":{"type":"integer","nullable":true,"description":"Provider place ID"},"service_id":{"type":"integer","description":"Service ID"},"weight":{"type":"number","description":"Package weight in kg"},"size":{"type":"string","description":"Package size category"},"cod":{"type":"number","description":"Cash on delivery amount"},"cod_currency_id":{"type":"integer","description":"COD currency ID"},"cod_account_date":{"type":"string","nullable":true,"format":"date-time","description":"COD account date"},"cod_accounted_amount":{"type":"number","description":"COD accounted amount"},"insurance":{"type":"number","description":"Insurance amount"},"insurance_currency_id":{"type":"integer","description":"Insurance currency ID"},"is_fragile":{"type":"integer","description":"Whether package is fragile (1/0)"},"is_amorf":{"type":"integer","description":"Whether package is amorphous (1/0)"},"is_priority":{"type":"integer","description":"Whether package has priority (1/0)"},"service_fee":{"type":"number","nullable":true,"description":"Service fee"},"return_fee":{"type":"number","nullable":true,"description":"Return fee"},"fees_currency_id":{"type":"integer","nullable":true,"description":"Fees currency ID"},"fees_calculation":{"type":"string","nullable":true,"description":"JSON string with fee calculation details"},"fees_discount_percent":{"type":"number","nullable":true,"description":"Fee discount percentage"},"foreign_tracking_id":{"type":"string","nullable":true,"description":"External tracking ID"},"customer_note":{"type":"string","nullable":true,"description":"Customer note"},"upload_by":{"type":"string","nullable":true,"description":"Upload user"},"upload_from":{"type":"string","description":"Upload source"},"order_error":{"type":"string","nullable":true,"description":"Order error message"},"tracked_at":{"type":"string","nullable":true,"format":"date-time","description":"Tracking timestamp"},"created_at":{"type":"string","format":"date-time","description":"Creation timestamp"},"updated_at":{"type":"string","format":"date-time","description":"Last update timestamp"},"deleted_at":{"type":"string","nullable":true,"format":"date-time","description":"Deletion timestamp"},"is_deleteable":{"type":"boolean","description":"Whether parcel can be deleted"},"is_orderable":{"type":"boolean","description":"Whether parcel can be ordered"},"is_editable":{"type":"boolean","description":"Whether parcel can be edited"},"is_printable":{"type":"boolean","description":"Whether parcel can be printed"},"service":{"$ref":"#/components/schemas/ParcelService"},"contact":{"$ref":"#/components/schemas/ParcelContact"},"status":{"$ref":"#/components/schemas/ParcelStatus"},"cod_currency":{"$ref":"#/components/schemas/Currency"},"place":{"type":"object","nullable":true,"description":"Provider place (if applicable)"},"order":{"$ref":"#/components/schemas/ParcelOrder"},"warehouse":{"$ref":"#/components/schemas/ParcelContact"}}},"ParcelService":{"type":"object","properties":{"id":{"type":"integer"},"provider_id":{"type":"integer"},"country_id":{"type":"integer"},"slug":{"type":"string"},"is_default":{"type":"integer"},"full_address_required":{"type":"integer"},"maximum_weight":{"type":"number"},"supported_sizes":{"type":"string","description":"JSON array of supported sizes"},"is_support_amorf":{"type":"integer"},"is_support_fragile":{"type":"integer"},"is_support_priority":{"type":"integer"},"provider":{"$ref":"#/components/schemas/Provider"}}},"Provider":{"type":"object","properties":{"id":{"type":"integer","description":"Provider ID"},"name":{"type":"string","description":"Provider name"},"slug":{"type":"string","description":"Provider slug"},"tracking_link":{"type":"string","description":"Tracking link template with %foreign_tracking_id% placeholder"}}},"ParcelContact":{"type":"object","properties":{"id":{"type":"integer"},"account_id":{"type":"integer"},"country_id":{"type":"integer"},"is_warehouse":{"type":"integer"},"is_billing":{"type":"integer"},"zip":{"type":"string"},"city":{"type":"string"},"address":{"type":"string"},"position_lat":{"type":"number","nullable":true},"position_lng":{"type":"number","nullable":true},"phone":{"type":"string"},"email":{"type":"string"},"family_name":{"type":"string","nullable":true},"first_name":{"type":"string","nullable":true},"company_name":{"type":"string","nullable":true},"dpd_buCode":{"type":"string","nullable":true},"dpd_customerId":{"type":"string","nullable":true},"dpd_addressId":{"type":"string","nullable":true},"deleted_at":{"type":"string","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"country":{"$ref":"#/components/schemas/Country"}}},"Country":{"type":"object","properties":{"id":{"type":"integer","description":"Country ID"},"name":{"type":"string","description":"Country name"},"iso":{"type":"string","description":"ISO country code (lowercase)"},"currency_id":{"type":"integer","description":"Currency ID"},"cod_payout_limit":{"type":"number","description":"Cash on delivery payout limit"},"vat":{"type":"number","description":"VAT rate percentage"}}},"ParcelStatus":{"type":"object","properties":{"id":{"type":"integer"},"parcel_id":{"type":"integer"},"status_code":{"type":"integer"},"status_description":{"type":"string","nullable":true},"status_date":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"Currency":{"type":"object","properties":{"id":{"type":"integer","description":"Currency ID"},"name":{"type":"string","description":"Currency name"},"short_text":{"type":"string","description":"Currency short code"},"symbol":{"type":"string","description":"Currency symbol"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ParcelOrder":{"type":"object","properties":{"id":{"type":"integer"},"account_id":{"type":"integer"},"user_id":{"type":"integer"},"deleted_at":{"type":"string","nullable":true},"updated_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"}}},"PaginationLinks":{"type":"object","properties":{"first":{"type":"string","description":"Link to first page"},"last":{"type":"string","description":"Link to last page"},"prev":{"type":"string","nullable":true,"description":"Link to previous page"},"next":{"type":"string","nullable":true,"description":"Link to next page"}}},"PaginationMeta":{"type":"object","properties":{"current_page":{"type":"integer","description":"Current page number"},"from":{"type":"integer","description":"First item number on current page"},"last_page":{"type":"integer","description":"Last page number"},"per_page":{"type":"integer","description":"Items per page"},"to":{"type":"integer","description":"Last item number on current page"},"total":{"type":"integer","description":"Total number of items"}}}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"ValidationError":{"description":"Validation failed","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}}}}}},"paths":{"/v3/parcels":{"get":{"tags":["Parcels"],"summary":"List parcels","description":"Retrieve a paginated list of parcels with filtering and sorting options","parameters":[{"name":"page","in":"query","description":"Page number for pagination","required":false,"schema":{"type":"integer","minimum":1,"default":1}},{"name":"limit","in":"query","description":"Number of items per page","required":false,"schema":{"type":"integer","enum":[5,10,25,50,100],"default":50}},{"name":"sort","in":"query","description":"Field to sort by","required":false,"schema":{"type":"string","enum":["id","created_at","contact","status_code","cod"],"default":"id"}},{"name":"order","in":"query","description":"Sort order","required":false,"schema":{"type":"string","enum":["asc","desc"],"default":"desc"}},{"name":"search","in":"query","description":"Search term for parcels, contacts, or tracking IDs","required":false,"schema":{"type":"string"}},{"name":"providers[]","in":"query","description":"Filter by provider IDs","required":false,"schema":{"type":"array","items":{"type":"integer"}},"style":"form","explode":true},{"name":"statuses[]","in":"query","description":"Filter by status codes","required":false,"schema":{"type":"array","items":{"type":"integer","enum":[100,200,210,300,310,400,500,600]}},"style":"form","explode":true},{"name":"cods","in":"query","description":"Filter by COD status","required":false,"schema":{"type":"string","enum":["all","have","none"],"default":"all"}},{"name":"dates","in":"query","description":"Date range filter","required":false,"schema":{"type":"object","properties":{"from":{"type":"string","format":"date"},"to":{"type":"string","format":"date"}}}},{"name":"order_id","in":"query","description":"Filter by order ID","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"description":"List of parcels","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ParcelList"}},"links":{"$ref":"#/components/schemas/PaginationLinks"},"meta":{"$ref":"#/components/schemas/PaginationMeta"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Create a new parcel

> Create a new parcel with contact and shipping details

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"schemas":{"ParcelCreateRequest":{"type":"object","required":["service_id","weight","size","cod","cod_currency_id","insurance","insurance_currency_id","is_fragile","is_amorf"],"properties":{"service_id":{"type":"integer","description":"Provider service ID"},"place_id":{"type":"integer","nullable":true,"description":"Provider place ID (required for some services)"},"custom_id":{"type":"string","nullable":true,"maxLength":255,"description":"Custom parcel identifier"},"contact_id":{"type":"integer","nullable":true,"description":"Existing contact ID (alternative to contact details)"},"contact_first_name":{"type":"string","nullable":true,"description":"Contact first name"},"contact_family_name":{"type":"string","nullable":true,"description":"Contact family name"},"contact_phone":{"type":"string","nullable":true,"description":"Contact phone number"},"contact_email":{"type":"string","nullable":true,"format":"email","description":"Contact email address"},"contact_country_id":{"type":"integer","nullable":true,"description":"Contact country ID"},"contact_zip":{"type":"string","nullable":true,"description":"Contact postal code"},"contact_city":{"type":"string","nullable":true,"description":"Contact city"},"contact_address":{"type":"string","nullable":true,"description":"Contact address"},"warehouse_id":{"type":"integer","nullable":true,"description":"Warehouse contact ID (alternative to warehouse details)"},"warehouse_zip":{"type":"string","nullable":true,"description":"Warehouse postal code"},"warehouse_city":{"type":"string","nullable":true,"description":"Warehouse city"},"warehouse_address":{"type":"string","nullable":true,"description":"Warehouse address"},"warehouse_email":{"type":"string","nullable":true,"format":"email","description":"Warehouse email"},"warehouse_phone":{"type":"string","nullable":true,"description":"Warehouse phone"},"weight":{"type":"number","minimum":0.1,"maximum":40,"description":"Package weight in kg"},"size":{"type":"string","enum":["xs","s","m","l","xl","xxl"],"description":"Package size category"},"cod":{"type":"number","minimum":0,"description":"Cash on delivery amount"},"cod_currency_id":{"type":"integer","description":"COD currency ID"},"insurance":{"type":"number","minimum":0,"description":"Insurance amount"},"insurance_currency_id":{"type":"integer","description":"Insurance currency ID"},"is_fragile":{"type":"boolean","description":"Whether package is fragile"},"is_amorf":{"type":"boolean","description":"Whether package is amorphous"},"customer_note":{"type":"string","nullable":true,"maxLength":50,"description":"Customer note"}}},"ParcelCreated":{"type":"object","properties":{"contact_id":{"type":"integer"},"warehouse_id":{"type":"integer"},"place_id":{"type":"integer","nullable":true},"service_id":{"type":"integer"},"account_id":{"type":"integer"},"custom_id":{"type":"string","nullable":true},"weight":{"type":"number"},"size":{"type":"string"},"cod":{"type":"number"},"cod_currency_id":{"type":"integer"},"insurance":{"type":"number"},"insurance_currency_id":{"type":"integer"},"is_fragile":{"type":"boolean"},"customer_note":{"type":"string","nullable":true},"is_priority":{"type":"boolean","nullable":true},"updated_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"id":{"type":"integer"},"is_deleteable":{"type":"boolean"},"is_orderable":{"type":"boolean"},"is_editable":{"type":"boolean"},"is_printable":{"type":"boolean"},"service":{"$ref":"#/components/schemas/ParcelService"},"status":{"$ref":"#/components/schemas/ParcelStatus"}}},"ParcelService":{"type":"object","properties":{"id":{"type":"integer"},"provider_id":{"type":"integer"},"country_id":{"type":"integer"},"slug":{"type":"string"},"is_default":{"type":"integer"},"full_address_required":{"type":"integer"},"maximum_weight":{"type":"number"},"supported_sizes":{"type":"string","description":"JSON array of supported sizes"},"is_support_amorf":{"type":"integer"},"is_support_fragile":{"type":"integer"},"is_support_priority":{"type":"integer"},"provider":{"$ref":"#/components/schemas/Provider"}}},"Provider":{"type":"object","properties":{"id":{"type":"integer","description":"Provider ID"},"name":{"type":"string","description":"Provider name"},"slug":{"type":"string","description":"Provider slug"},"tracking_link":{"type":"string","description":"Tracking link template with %foreign_tracking_id% placeholder"}}},"ParcelStatus":{"type":"object","properties":{"id":{"type":"integer"},"parcel_id":{"type":"integer"},"status_code":{"type":"integer"},"status_description":{"type":"string","nullable":true},"status_date":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"ValidationError":{"description":"Validation failed","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}}}}}},"paths":{"/v3/parcels":{"post":{"tags":["Parcels"],"summary":"Create a new parcel","description":"Create a new parcel with contact and shipping details","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParcelCreateRequest"}}}},"responses":{"201":{"description":"Parcel created successfully","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ParcelCreated"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Get parcel details

> Retrieve detailed information about a specific parcel

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"schemas":{"ParcelList":{"type":"object","properties":{"id":{"type":"integer","description":"Parcel ID"},"order_id":{"type":"integer","nullable":true,"description":"Order ID if parcel is part of an order"},"custom_id":{"type":"string","nullable":true,"description":"Custom parcel identifier"},"account_id":{"type":"integer","description":"Account ID"},"warehouse_id":{"type":"integer","description":"Warehouse contact ID"},"contact_id":{"type":"integer","description":"Contact ID"},"place_id":{"type":"integer","nullable":true,"description":"Provider place ID"},"service_id":{"type":"integer","description":"Service ID"},"weight":{"type":"number","description":"Package weight in kg"},"size":{"type":"string","description":"Package size category"},"cod":{"type":"number","description":"Cash on delivery amount"},"cod_currency_id":{"type":"integer","description":"COD currency ID"},"cod_account_date":{"type":"string","nullable":true,"format":"date-time","description":"COD account date"},"cod_accounted_amount":{"type":"number","description":"COD accounted amount"},"insurance":{"type":"number","description":"Insurance amount"},"insurance_currency_id":{"type":"integer","description":"Insurance currency ID"},"is_fragile":{"type":"integer","description":"Whether package is fragile (1/0)"},"is_amorf":{"type":"integer","description":"Whether package is amorphous (1/0)"},"is_priority":{"type":"integer","description":"Whether package has priority (1/0)"},"service_fee":{"type":"number","nullable":true,"description":"Service fee"},"return_fee":{"type":"number","nullable":true,"description":"Return fee"},"fees_currency_id":{"type":"integer","nullable":true,"description":"Fees currency ID"},"fees_calculation":{"type":"string","nullable":true,"description":"JSON string with fee calculation details"},"fees_discount_percent":{"type":"number","nullable":true,"description":"Fee discount percentage"},"foreign_tracking_id":{"type":"string","nullable":true,"description":"External tracking ID"},"customer_note":{"type":"string","nullable":true,"description":"Customer note"},"upload_by":{"type":"string","nullable":true,"description":"Upload user"},"upload_from":{"type":"string","description":"Upload source"},"order_error":{"type":"string","nullable":true,"description":"Order error message"},"tracked_at":{"type":"string","nullable":true,"format":"date-time","description":"Tracking timestamp"},"created_at":{"type":"string","format":"date-time","description":"Creation timestamp"},"updated_at":{"type":"string","format":"date-time","description":"Last update timestamp"},"deleted_at":{"type":"string","nullable":true,"format":"date-time","description":"Deletion timestamp"},"is_deleteable":{"type":"boolean","description":"Whether parcel can be deleted"},"is_orderable":{"type":"boolean","description":"Whether parcel can be ordered"},"is_editable":{"type":"boolean","description":"Whether parcel can be edited"},"is_printable":{"type":"boolean","description":"Whether parcel can be printed"},"service":{"$ref":"#/components/schemas/ParcelService"},"contact":{"$ref":"#/components/schemas/ParcelContact"},"status":{"$ref":"#/components/schemas/ParcelStatus"},"cod_currency":{"$ref":"#/components/schemas/Currency"},"place":{"type":"object","nullable":true,"description":"Provider place (if applicable)"},"order":{"$ref":"#/components/schemas/ParcelOrder"},"warehouse":{"$ref":"#/components/schemas/ParcelContact"}}},"ParcelService":{"type":"object","properties":{"id":{"type":"integer"},"provider_id":{"type":"integer"},"country_id":{"type":"integer"},"slug":{"type":"string"},"is_default":{"type":"integer"},"full_address_required":{"type":"integer"},"maximum_weight":{"type":"number"},"supported_sizes":{"type":"string","description":"JSON array of supported sizes"},"is_support_amorf":{"type":"integer"},"is_support_fragile":{"type":"integer"},"is_support_priority":{"type":"integer"},"provider":{"$ref":"#/components/schemas/Provider"}}},"Provider":{"type":"object","properties":{"id":{"type":"integer","description":"Provider ID"},"name":{"type":"string","description":"Provider name"},"slug":{"type":"string","description":"Provider slug"},"tracking_link":{"type":"string","description":"Tracking link template with %foreign_tracking_id% placeholder"}}},"ParcelContact":{"type":"object","properties":{"id":{"type":"integer"},"account_id":{"type":"integer"},"country_id":{"type":"integer"},"is_warehouse":{"type":"integer"},"is_billing":{"type":"integer"},"zip":{"type":"string"},"city":{"type":"string"},"address":{"type":"string"},"position_lat":{"type":"number","nullable":true},"position_lng":{"type":"number","nullable":true},"phone":{"type":"string"},"email":{"type":"string"},"family_name":{"type":"string","nullable":true},"first_name":{"type":"string","nullable":true},"company_name":{"type":"string","nullable":true},"dpd_buCode":{"type":"string","nullable":true},"dpd_customerId":{"type":"string","nullable":true},"dpd_addressId":{"type":"string","nullable":true},"deleted_at":{"type":"string","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"country":{"$ref":"#/components/schemas/Country"}}},"Country":{"type":"object","properties":{"id":{"type":"integer","description":"Country ID"},"name":{"type":"string","description":"Country name"},"iso":{"type":"string","description":"ISO country code (lowercase)"},"currency_id":{"type":"integer","description":"Currency ID"},"cod_payout_limit":{"type":"number","description":"Cash on delivery payout limit"},"vat":{"type":"number","description":"VAT rate percentage"}}},"ParcelStatus":{"type":"object","properties":{"id":{"type":"integer"},"parcel_id":{"type":"integer"},"status_code":{"type":"integer"},"status_description":{"type":"string","nullable":true},"status_date":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"Currency":{"type":"object","properties":{"id":{"type":"integer","description":"Currency ID"},"name":{"type":"string","description":"Currency name"},"short_text":{"type":"string","description":"Currency short code"},"symbol":{"type":"string","description":"Currency symbol"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ParcelOrder":{"type":"object","properties":{"id":{"type":"integer"},"account_id":{"type":"integer"},"user_id":{"type":"integer"},"deleted_at":{"type":"string","nullable":true},"updated_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"}}}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"Forbidden":{"description":"Access forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}}},"paths":{"/v3/parcels/{id}":{"get":{"tags":["Parcels"],"summary":"Get parcel details","description":"Retrieve detailed information about a specific parcel","parameters":[{"name":"id","in":"path","required":true,"description":"Parcel ID","schema":{"type":"integer"}}],"responses":{"200":{"description":"Parcel details","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ParcelList"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Update parcel

> Update an existing parcel

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"schemas":{"ParcelCreateRequest":{"type":"object","required":["service_id","weight","size","cod","cod_currency_id","insurance","insurance_currency_id","is_fragile","is_amorf"],"properties":{"service_id":{"type":"integer","description":"Provider service ID"},"place_id":{"type":"integer","nullable":true,"description":"Provider place ID (required for some services)"},"custom_id":{"type":"string","nullable":true,"maxLength":255,"description":"Custom parcel identifier"},"contact_id":{"type":"integer","nullable":true,"description":"Existing contact ID (alternative to contact details)"},"contact_first_name":{"type":"string","nullable":true,"description":"Contact first name"},"contact_family_name":{"type":"string","nullable":true,"description":"Contact family name"},"contact_phone":{"type":"string","nullable":true,"description":"Contact phone number"},"contact_email":{"type":"string","nullable":true,"format":"email","description":"Contact email address"},"contact_country_id":{"type":"integer","nullable":true,"description":"Contact country ID"},"contact_zip":{"type":"string","nullable":true,"description":"Contact postal code"},"contact_city":{"type":"string","nullable":true,"description":"Contact city"},"contact_address":{"type":"string","nullable":true,"description":"Contact address"},"warehouse_id":{"type":"integer","nullable":true,"description":"Warehouse contact ID (alternative to warehouse details)"},"warehouse_zip":{"type":"string","nullable":true,"description":"Warehouse postal code"},"warehouse_city":{"type":"string","nullable":true,"description":"Warehouse city"},"warehouse_address":{"type":"string","nullable":true,"description":"Warehouse address"},"warehouse_email":{"type":"string","nullable":true,"format":"email","description":"Warehouse email"},"warehouse_phone":{"type":"string","nullable":true,"description":"Warehouse phone"},"weight":{"type":"number","minimum":0.1,"maximum":40,"description":"Package weight in kg"},"size":{"type":"string","enum":["xs","s","m","l","xl","xxl"],"description":"Package size category"},"cod":{"type":"number","minimum":0,"description":"Cash on delivery amount"},"cod_currency_id":{"type":"integer","description":"COD currency ID"},"insurance":{"type":"number","minimum":0,"description":"Insurance amount"},"insurance_currency_id":{"type":"integer","description":"Insurance currency ID"},"is_fragile":{"type":"boolean","description":"Whether package is fragile"},"is_amorf":{"type":"boolean","description":"Whether package is amorphous"},"customer_note":{"type":"string","nullable":true,"maxLength":50,"description":"Customer note"}}},"ParcelCreated":{"type":"object","properties":{"contact_id":{"type":"integer"},"warehouse_id":{"type":"integer"},"place_id":{"type":"integer","nullable":true},"service_id":{"type":"integer"},"account_id":{"type":"integer"},"custom_id":{"type":"string","nullable":true},"weight":{"type":"number"},"size":{"type":"string"},"cod":{"type":"number"},"cod_currency_id":{"type":"integer"},"insurance":{"type":"number"},"insurance_currency_id":{"type":"integer"},"is_fragile":{"type":"boolean"},"customer_note":{"type":"string","nullable":true},"is_priority":{"type":"boolean","nullable":true},"updated_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"id":{"type":"integer"},"is_deleteable":{"type":"boolean"},"is_orderable":{"type":"boolean"},"is_editable":{"type":"boolean"},"is_printable":{"type":"boolean"},"service":{"$ref":"#/components/schemas/ParcelService"},"status":{"$ref":"#/components/schemas/ParcelStatus"}}},"ParcelService":{"type":"object","properties":{"id":{"type":"integer"},"provider_id":{"type":"integer"},"country_id":{"type":"integer"},"slug":{"type":"string"},"is_default":{"type":"integer"},"full_address_required":{"type":"integer"},"maximum_weight":{"type":"number"},"supported_sizes":{"type":"string","description":"JSON array of supported sizes"},"is_support_amorf":{"type":"integer"},"is_support_fragile":{"type":"integer"},"is_support_priority":{"type":"integer"},"provider":{"$ref":"#/components/schemas/Provider"}}},"Provider":{"type":"object","properties":{"id":{"type":"integer","description":"Provider ID"},"name":{"type":"string","description":"Provider name"},"slug":{"type":"string","description":"Provider slug"},"tracking_link":{"type":"string","description":"Tracking link template with %foreign_tracking_id% placeholder"}}},"ParcelStatus":{"type":"object","properties":{"id":{"type":"integer"},"parcel_id":{"type":"integer"},"status_code":{"type":"integer"},"status_description":{"type":"string","nullable":true},"status_date":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"Forbidden":{"description":"Access forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"ValidationError":{"description":"Validation failed","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}}}}}},"paths":{"/v3/parcels/{id}":{"put":{"tags":["Parcels"],"summary":"Update parcel","description":"Update an existing parcel","parameters":[{"name":"id","in":"path","required":true,"description":"Parcel ID","schema":{"type":"integer"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParcelCreateRequest"}}}},"responses":{"200":{"description":"Parcel updated successfully","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ParcelCreated"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Delete parcel

> Delete a parcel

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"Forbidden":{"description":"Access forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}}},"paths":{"/v3/parcels/{id}":{"delete":{"tags":["Parcels"],"summary":"Delete parcel","description":"Delete a parcel","parameters":[{"name":"id","in":"path","required":true,"description":"Parcel ID","schema":{"type":"integer"}}],"responses":{"200":{"description":"Parcel deleted successfully","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Calculate shipping price

> Calculate shipping cost for a parcel configuration

```json
{"openapi":"3.0.3","info":{"title":"Packli API","version":"3.0.0"},"tags":[{"name":"Parcels","description":"Parcel management operations"}],"servers":[{"url":"https://app.packli.hu/api","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Laravel Sanctum token authentication.\nInclude the token in the Authorization header: `Bearer {your-token}`\n"}},"responses":{"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}},"ValidationError":{"description":"Validation failed","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}}}}}},"paths":{"/v3/calculate-price":{"get":{"tags":["Parcels"],"summary":"Calculate shipping price","description":"Calculate shipping cost for a parcel configuration","parameters":[{"name":"weight","in":"query","required":true,"description":"Package weight in kg","schema":{"type":"number","minimum":0.1}},{"name":"service_id","in":"query","required":true,"description":"Provider service ID","schema":{"type":"integer"}},{"name":"warehouse_id","in":"query","required":true,"description":"Warehouse contact ID","schema":{"type":"integer"}},{"name":"contact_country","in":"query","required":true,"description":"Destination country ID","schema":{"type":"integer"}},{"name":"cod","in":"query","required":true,"description":"Cash on delivery amount","schema":{"type":"number","minimum":0}},{"name":"cod_currency","in":"query","required":true,"description":"COD currency ID","schema":{"type":"integer"}},{"name":"insurance","in":"query","required":true,"description":"Insurance amount","schema":{"type":"number","minimum":0}},{"name":"insurance_currency","in":"query","required":true,"description":"Insurance currency ID","schema":{"type":"integer"}},{"name":"extra_services[]","in":"query","required":true,"description":"Extra services configuration","schema":{"type":"array","items":{"type":"boolean"}},"style":"form","explode":true}],"responses":{"200":{"description":"Price calculation result","content":{"application/json":{"schema":{"type":"object","properties":{"base":{"type":"number","description":"Base shipping price"},"cod_fee":{"type":"number","description":"Cash on delivery fee"},"fuel_fee":{"type":"number","description":"Fuel surcharge"},"extra_fee":{"type":"number","description":"Additional service fees"},"discount":{"type":"number","description":"Discount amount"},"insurance":{"type":"number","description":"Insurance fee"},"discount_percent":{"type":"number","description":"Discount percentage"},"total":{"type":"number","description":"Total shipping cost"},"return_fee":{"type":"number","description":"Return shipping fee"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.packli.hu/api-integracio/parcels.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
