# Overview

AfricanIES API is an API service designed to streamline your shipping and logistics operations. Whether you're shipping from Nigeria to international destinations or managing imports, our API provides all the tools you need to integrate shipping capabilities into your application.

### Core Capabilities

The AfricanIES API provides a complete solution for:

* **Shipment Management**: Get real-time shipping rates, purchase shipments with detailed package information, and track packages throughout their journey from origin to destination. Manage the complete shipment lifecycle programmatically.
* **Product Catalog**: Browse comprehensive product catalogs, search for products by name or description, verify product HS codes for customs compliance, and access product categories. Perfect for e-commerce integrations and inventory management.
* **Warehouse Operations**: Access warehouse information, locate distribution centers by country, and find warehouses with export-to-wealth (ETW) availability. Essential for managing inventory and fulfillment operations.
* **Address Verification**: Validate shipping addresses before creating shipments to ensure accurate delivery. Reduce failed deliveries and improve customer satisfaction by verifying addresses in real-time.

### Recommended booking flow

To book shipments successfully and reduce failed bookings, follow this sequence:

* **Validate Addresses First (recommended):** Start with *Address Verification*. This is optional, but strongly recommended to avoid shipment loss and delivery issues. If your platform already uses Google Address APIs and captures validated address components correctly, you may skip this step.
* **Get Valid HS Codes For Items:** Use *Product HS Code* endpoints to find the correct HS code for each item. Every item must have a valid HS code for customs and booking.&#x20;
* ⁠**Show/select Available Carriers:** Use *Shipment Carriers* to fetch available options, transit timelines, and limits. The ⁠ slug ⁠ in this response is required later during purchase.&#x20;
* **Prepare boxes and request rates:** Organise items into the ⁠ boxes ⁠ array with accurate dimensions and weight, then call *Shipment* rates to get shipping costs for the route.&#x20;
* **Upload Invoice/photos When Needed:** If shipping to Europe, upload invoice documents using *File* signed URLs. Item photos are optional globally and also use the same signed URL flow.&#x20;
* **Purchase Shipment:** Submit the final shipment purchase request with the selected ⁠ shipment\_method\_slug ⁠ and all validated shipment details.
