AWB External Integration ## Sections • [Bolesa-SA](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/bolesa-sa.md): Bolesa app: A shipping platform for online stores, available on web portals, Android, and iOS applications. This API documentation provides endpoints for integrating with the Bolesa app. تطبيق بوليصة: أسرع وأسهل طريقة لشحن منتجاتكم إلى عملائكم. تتميز بوليصة بتقديم تجربة شحن لا مثيل لها لعملاء المتاجر الإلكترونية. نوفر لكم جميع الأدوات اللازمة لتتجاوز توقعات عملائك. • [Get And Query Cities](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-statuses-list-copy-1.md): Available Filters: Shipping Category (Select only one to avoid conflicts) regular (boolean) – Will return cities supported by Standard Dry Regular Shipping Services cold (boolean) – Will return cities supported by Cold Shipping Services heavy (boolean) – Will return cities supported by Heavy/Pallet Shipping Services for Big Volume or heavy items Shipping Carrier carrier (string) – Specify a carrier to get only supported coverage (e.g., "smsa" ) Direction Filter for_shipper (boolean) – Only cities supported to ship from for_consignee (boolean) – Only cities supported to ship to Search By City Name Or Part of Name search (string) – Filter by city name Pagination Controls (All results returned by default, Results will be return all by default to paginate use one or combination of these keys) page (integer) – Page number per_page (integer) – Items per page (Default: 200) paginate (boolean) – Enable pagination JSON { "regular":true, "carrier":"smsa", "paginate":true, "per_page":10 } • [Get Statuses List](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-statuses-list.md): To get the status list, you should send a shipping type parameter (odd or Regular) • [Get Data Lists](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-data-lists.md): To get the data list, you should send a shipping type parameter (odd or Regular) In case of ODD you will get a response contains: Supported serviceable areas along with the polygon points for each area in order to draw it in your application Estimated pricing range In case of REGULAR you will get a response contains: Available Countries Cities Carriers Payment types Note: the odd means the quick shipping • [pairable cities for pickup city](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/pairable-cities-for-pickup-city.md): Retrieves a list of pair able cities for the specified pickup city. • [Get Carriers Cities And Pricing](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-carriers-cities-and-pricing.md) • [Get Available Carriers and Pricing For 2 Cities](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-available-carriers-and-pricing-for-2-cities.md): To get available carriers, pricing and logo you will send the pickup city , consignee city and the payment type (cc or cod) • [Get Carrier City Villages/Branches](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-carrier-city-villages-branches.md): Description Retrieves villages or branches for a specific carrier based on either city IDs or address IDs. This endpoint first attempts to fetch villages from the carrier's external API, and falls back to local carrier branches if no results are found. • [Get Location Details](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/carriers-pricing-supported-cities/get-location-details.md): This endpoint retrieves location information (city details, display names) based on geographic coordinates (latitude and longitude) • [Generate Combined Labels PDF](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/list-of-orders-copy-1.md) • [List Of Orders](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/list-of-orders.md): Overview This endpoint retrieves a paginated list of orders for the authenticated integrated store. It supports extensive filtering, searching, and sorting capabilities. Authentication This endpoint requires authentication via API key. The API key must be passed in the x-api-key header. The middleware will automatically detect and authenticate the integrated store associated with the API key. Request Parameters All parameters are optional. The endpoint accepts both GET (query parameters) and POST (request body) methods. This endpoint provides two ways to filter records based on values stored in the JSON meta column: Through request body (recommended for complex queries) { "meta" : { "key" : "data.tenant_id" , "value" : “ REF-2024-567-ABX” } } Through x-meta header (convenient for simple filters) x-meta : {"key":"data.tenant_id","value":"TNT-2023-04876"} • [Create Awb Via Custom Integration](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/create-awb-via-custom-integration.md): You can create REGULAR airwaybill from this endpointalso, you can update the details of regular pending shipment Short Address Usage The short address fields ( shipper_short_address and consignee_short_address ) provide a condensed representation of the shipper's or consignee's address. Behavior and Priority: 1.Priority Extraction: If a short address is provided, the system will attempt to extract the full address and city from it. Extracted data from the short address takes priority over the standard address fields. 2.Override Mechanism: When extraction succeeds, the system will override the corresponding fields: shipper_address_line_1 and shipper_city (for shipper_short_address ) consignee_address_line_1 and consignee_city (for consignee_short_address ) 3.Fallback: If the system cannot extract address details from the short address, it will fallback to the explicitly provided keys: shipper_address_line_1 shipper_city consignee_address_line_1 consignee_city • [AWB/Order Tracking Log](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/awb-order-tracking-log.md): Obtain a record of tracking information for the designated tracking number. • [Retry Odd Order](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/retry-odd-order.md): In case of any user error occurred, you can retry the creation of odd order • [Cancel Odd Order](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/cancel-odd-order.md): To cancel odd shipment, you will should send the uuid of the shipment to this endpoint • [Delete Pending Awb](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/delete-pending-awb.md): To delete regular shipment, you will should send the order id to this endpoint • [Deactivate Shipping Air Waybill (AWB)](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shipping-awbs-and-on-demand-orders/delete-pending-awb-copy-1.md): This endpoint deactivates a shipping air waybill (AWB) if it meets certain conditions. The AWB must: - Exist in the system - Belong to the requesting user's store - Not be delivered or paid - Be in one of the allowed statuses: NO STATUS, READY FOR SHIPMENT, TRIAL FAILURE, or DELIVERY FAILURE • [User Addresses List](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/user-addresses-list.md): Retrieve saved addresses from Bolesa with shipping type and flexible meta filtering . { "shipping_type" : "odd" , "meta" : { "key" : "data.tenant_id" , "value" : " TNT-2023-04876 " } } • [Create Or Update Address](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/create-or-update-address.md): This endpoint allows you to create a new address in bolesa, you should send the shipping type of the address • [Set Default Shipper Address](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/set-default-shipper-address.md) • [Serviceable Areas](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/serviceable-areas.md): This endpoint returns polygon points of all serviceable areas available in bolesa for odd shipping • [Check Serviceable Area](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/check-serviceable-area.md): This end point allows you to send coordinates and get the supported serviceable area polygon points according to that coordinates you sent • [Compute Distance](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/locations-and-addresses/compute-distance.md): This endpoint allows you to get the ODD shipping pricing and distanceTo calculate the distance and price you should send Shipper coordinates and consignee coordinates Payment type • [Get Access Token](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/auth/get-access-token.md) • [Logout](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/auth/logout.md) • [Get Store Key](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/get-store-key.md) • [List Store Webhook Events](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/list-store-webhook-events.md) • [Register Webhook](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/register-webhook.md) • [List Store Webhook Subscriptions](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/list-store-webhook-subscriptions.md) • [Unsubscribe Webhook](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/unsubscribe-webhook.md) • [Refresh Webhook Authorization](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/refresh-webhook-authorization.md) • [Toggle Webhook Activation](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/store-webhooks/toggle-webhook-activation.md) • [Create AWB through ShipLink](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/create-awb.md): This endpoint generates Air Waybill (AWB) for multi-vendor shipments through the ShipLink integration, allowing a single order to process multiple shipments from different vendors. Request Body Options This endpoint supports two ways to generate Air Waybills (AWBs): Using a processing_id (for pre-submitted orders). Using a full order object (for new orders) • [Using a full order object (for new orders)](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/create-awb/using-a-full-order-object-for-new-orders.md): Submit the complete order and shipment details directly. Carrier Strategy The carrier_strategy field determines how shipping carriers are selected for each shipment. This is specified in the order object. lowest_price: System automatically selects the most economical carrier. shared: The system intelligently selects one carrier that can service all shipments in the order at the best combined value specifid: Uses the exact carrier provided in the shipments.carrier field Short Address Usage The short address fields provide a concise representation of the shipment or consignee address and are used as a primary source for address extraction when available. Behavior and Priority 1. Priority Extraction If a short address is provided: For shippers: shipments.*.address.short_address For consignee: consignee.address.short_address The system will attempt to extract the full address line and city from the short address. Any successfully extracted data takes priority over the explicitly provided address fields. 2. Override Mechanism When extraction from the short address is successful, the system will override the following fields: For each shipment (shipper): shipments.*.address.address_line shipments.*.address.city For the consignee: consignee.address.address_line consignee.address.city 3. Fallback Behavior If the system fails to extract address details from the short address, it will fallback to the explicitly provided fields: For each shipment (shipper): shipments.*.address.address_line shipments.*.address.city For the consignee: consignee.address.address_line consignee.address.city Vendor Order Validation The order.shipments.*.vendor_id field validates vendor assignments for each shipment. This is specified in the shipments array. required: Must provide a vendor ID for each shipment integer: Must be a whole number value unique_combination: Vendor must not already handle this order (checks: vendor_id + order_id + order_number + store_id) Implementation Notes: Automatically checks against existing records Prevents duplicate vendor assignments Respects store context from authentication Error Message: "The combination of vendor id, order id and order number must be unique." • [Using a processing_id (for pre-submitted orders)](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/create-awb/create-through-processing-id.md): Provide only the processing_id if the order details were previously submitted and processed. Example • [Get Matched Carrier for Shipments](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/using-a-processing_id-for-pre-submitted-orders-copy-1.md): This endpoint analyzes shipments and returns the matched carriers along with pricing information. It generates a processing ID that can be used for subsequent AWB creation requests. Carrier Strategy The carrier_strategy field determines how shipping carriers are selected for each shipment. This is specified in the order object. lowest_price: System automatically selects the most economical carrier. shared: The system intelligently selects one carrier that can service all shipments in the order at the best combined value specifid: Uses the exact carrier provided in the shipments.carrier field Vendor Order Validation The order.shipments.*.vendor_id field validates vendor assignments for each shipment. This is specified in the shipments array. required: Must provide a vendor ID for each shipment integer: Must be a whole number value unique_combination: Vendor must not already handle this order (checks: vendor_id + order_id + order_number + store_id) Implementation Notes: Automatically checks against existing records Prevents duplicate vendor assignments Respects store context from authentication Error Message: "The combination of vendor id, order id and order number must be unique." • [Get All Orders](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/get-all-orders.md): Retrieves all shipping orders with their associated shipments for the authenticated store, with optional filtering capabilities. Authentication Requires authenticated store access via API key API Key should be passed in the x-api-key header. • [Track Order Shipments](https://app.theneo.io/storage-it-solutions/awb-custom-integration-3/shiplink-integration/track-order-shipments.md): Tracks the shipment status of a specific order by its ID and tracking number, returning detailed carrier tracking information. Authentication Requires authenticated store access via API key API Key should be passed in the x-api-key header.