API Reference Documentation
Integrate your e-commerce storefronts directly with Albovo's automated print-on-demand fulfillment pipeline.
/api/v2/ordersAPI KeyGet Orders
Retrieves a paginated list of orders belonging to the authenticated client, with aggregated status counters in meta.status.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
| X-Timezone | Optional | Optional header to convert created_at and updated_at timestamps to your local timezone (e.g. 'Asia/Ho_Chi_Minh', 'America/New_York') |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| page | integer | Optional | Page number for pagination (starts at 1) (default: 1) |
| per_page | integer | Optional | Number of orders returned per page (default: 10, max: 100) (default: 10) |
| status | string | Optional | Filter by status: 'Awaiting Payment', 'In Production', 'Shipped', 'In Transit', 'Delivered', 'Cancelled', 'On Hold' (default: null) |
| search | string | Optional | Search keyword matching order ID, customer name, email, or tracking number (default: null) |
| from_date | string (YYYY-MM-DD) | Optional | Filter orders created on or after this calendar date (inclusive, starts 00:00:00 in request timezone). (default: null) |
| to_date | string (YYYY-MM-DD) | Optional | Filter orders created on or before this calendar date (inclusive, ends 23:59:59 in request timezone). (default: null) |
curl -X GET "https://api.albovo.com/api/v2/orders?from_date=2026-08-01&to_date=2026-08-25&status=Shipped&page=1&per_page=10" \ -H "X-API-Key: YOUR_API_KEY" \ -H "X-Timezone: Asia/Ho_Chi_Minh"
{
"success": true,
"message": "Orders retrieved successfully",
"data": {
"meta": {
"page": 1,
"per_page": 10,
"total": 2,
"total_pages": 1,
"status": {
"Awaiting Payment": 1,
"In Production": 1,
"Shipped": 0,
"In Transit": 0,
"Delivered": 0,
"Cancelled": 0,
"On Hold": 0
}
},
"orders": [
{
"order_id": "ORD-20260811-A1B2C",
"order_ref": "ORD-CLIENT-1001",
"status": "Awaiting Payment",
"address_to": {
"name": "John Doe",
"address1": "123 Main Street",
"address2": "Suite 4B",
"city": "San Francisco",
"region": "CA",
"zip": "94105",
"country": "US",
"email": "john.doe@example.com",
"phone": "+1234567890"
},
"shipment": {
"tracking_number": "TRK123456789",
"label_url": "https://example.com/labels/label_123.pdf"
},
"total_items_price": 24.5,
"shipping_price": 0.5,
"total_price": 25,
"created_at": "2026-08-11T16:25:00+07:00",
"updated_at": "2026-08-11T16:25:00+07:00",
"items": [
{
"id": 501,
"sku": "G5000-BLACK-M",
"quantity": 2,
"item_price": 12.25,
"item_price_total": 24.5,
"preview_files": {
"front": "https://example.com/mockups/front.png",
"back": ""
},
"print_files": {
"front": "https://example.com/designs/front.png",
"back": ""
}
}
]
}
]
}
}/api/v2/ordersAPI KeyCreate Order
Submits a new print order to the portal in 'Awaiting Payment' status. Supports Platform Delivery (with address) or Prepaid Carrier Label (with tracking number & label URL).
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
| Content-Type | Required | JSON payload body |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| order_ref | string | Required | Your own order reference ID (e.g. ORD-CLIENT-1001). It doesn't have to be unique. |
| print_technique | string | Deprecated | This field is no longer used. |
| address_to | object | Conditional | Delivery address object. Required if no prepaid shipment label is provided. |
| address_to.name | string (2-100 chars) | Required | Recipient full name. |
| address_to.raw_address | string (single-line address) | Conditional | Full single-line US shipping address string (e.g. '123 Main St Suite 4B, San Francisco, CA 94105'). Mutually exclusive with address1/city/region/zip. |
| address_to.email | string | Optional | Recipient contact email. |
| address_to.phone | string | Optional | Recipient contact phone number. |
| address_to.address1 | string (max 100 chars) | Conditional | Primary street address. |
| address_to.address2 | string (max 100 chars) | Optional | Apartment, suite, unit, or building (optional). |
| address_to.city | string (2-50 chars) | Conditional | City / District. |
| address_to.region | string (USPS state code / name) | Conditional | US state or territory: all 62 valid USPS codes (e.g. CA, NY, PR, TX) or full state name (auto-mapped). |
| address_to.zip | string (5 or 9-digit ZIP) | Conditional | US ZIP code: 5 digits ('90210') or 9 digits with hyphen ('90210-1234'). |
| address_to.country | string (default 'US') | Optional | Destination country. Defaults to 'US'. Domestic US shipping only ('US', 'USA', 'United States'). |
| address_to.verify | boolean (default true) | Optional | Optional boolean (default true). Determines whether carrier address verification is performed via 2-layer engine (internal cache + EasyPost) when pushed to factory. Set false to bypass verification for unindexed addresses. Note: If false, Albovo bears no responsibility for missing, undelivered, or returned shipments. |
| shipment | object | Conditional | Prepaid carrier shipment details. Required if no recipient delivery address is provided. |
| shipment.tracking_number | string | Required | Carrier tracking number. |
| shipment.label_url | string (url) | Required | Direct accessible URL to shipping label file (PDF or PNG). |
| items | array[object] | Required | Array of order items (minimum 1 item required). |
| items[].sku | string | Required | Catalog SKU formatted as SHIRTCODE-COLOR-SIZE (e.g. G5000-BLACK-M). |
| items[].quantity | integer | Required | Quantity of garments for this variant (minimum 1). |
| items[].preview_files | object | Conditional | Mockup preview image URLs (front, back, sleeve_left, sleeve_right). Must bi-directionally match print files. |
| items[].preview_files.front | string (url) | Optional | Mockup preview URL for front placement. |
| items[].preview_files.back | string (url) | Optional | Mockup preview URL for back placement. |
| items[].preview_files.sleeve_left | string (url) | Optional | Mockup preview URL for left sleeve placement. |
| items[].preview_files.sleeve_right | string (url) | Optional | Mockup preview URL for right sleeve placement. |
| items[].preview_files.shoulder_front | string (url) | Optional | Mockup preview URL for front shoulder placement. |
| items[].preview_files.shoulder_back | string (url) | Optional | Mockup preview URL for back shoulder placement. |
| items[].print_files | object | Required | High-resolution print design URLs (front, back, sleeve_left, sleeve_right). At least one main print (front/back) required. |
| items[].print_files.front | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for front placement. |
| items[].print_files.back | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for back placement. |
| items[].print_files.sleeve_left | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for left sleeve placement. |
| items[].print_files.sleeve_right | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for right sleeve placement. |
| items[].print_files.shoulder_front | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for front shoulder placement. Only for products that list this print area. |
| items[].print_files.shoulder_back | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for back shoulder placement. Only for products that list this print area. |
curl -X POST "https://api.albovo.com/api/v2/orders" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_ref": "ORD-CLIENT-1001",
"address_to": {
"name": "Jane Doe",
"email": "jane.doe@example.com",
"phone": "+1 (415) 555-1234",
"address1": "PO Box 255 182 Smokestack Hill Rd",
"city": "San Francisco",
"region": "California",
"zip": "94105-1234",
"country": "US"
},
"shipment": {
"tracking_number": "TRK123456789",
"label_url": "https://example.com/labels/label_123.pdf"
},
"items": [
{
"sku": "G5000-BLACK-M",
"quantity": 2,
"preview_files": {
"front": "https://example.com/mockups/front.png"
},
"print_files": {
"front": "https://example.com/designs/front.png"
}
}
]
}'{
"success": true,
"message": "Order created successfully",
"data": {
"order_id": "ORD-20260811-A1B2C",
"order_ref": "ORD-CLIENT-1001",
"status": "Awaiting Payment",
"total_items_price": 24.5,
"shipping_price": 0.5,
"total_price": 25,
"created_at": "2026-08-11T16:25:00+00:00",
"items": [
{
"id": 501,
"sku": "G5000-BLACK-M",
"quantity": 2,
"item_price": 12.25,
"item_price_total": 24.5
}
]
}
}/api/v2/orders/rateAPI KeyEstimate Order Rate
Calculates a live price breakdown β item unit costs plus a delivery split of shipping, label fee and rush production β without creating a persistent database order record. This is the only authoritative total: never charge a locally computed figure.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
| Content-Type | Required | JSON payload body |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| order_ref | string | Required | Your own order reference ID (e.g. ORD-CLIENT-1001). It doesn't have to be unique. |
| print_technique | string | Deprecated | This field is no longer used. |
| address_to | object | Conditional | Delivery address object. Required if no prepaid shipment label is provided. |
| address_to.name | string | Conditional | Recipient full name. |
| address_to.raw_address | string (single-line address) | Conditional | Full single-line US shipping address string (e.g. '123 Main St Suite 4B, San Francisco, CA 94105'). Mutually exclusive with address1/city/region/zip. |
| address_to.address1 | string | Conditional | Primary street address. |
| address_to.address2 | string | Optional | Apartment, suite, unit, or building (optional). |
| address_to.city | string | Conditional | City / District. |
| address_to.region | string | Conditional | US state or territory: all 62 valid USPS codes (e.g. CA, NY, PR, TX) or full state name (auto-mapped). |
| address_to.zip | string | Conditional | US ZIP code: 5 digits ('90210') or 9 digits with hyphen ('90210-1234'). |
| address_to.country | string | Optional | Destination country. Defaults to 'US'. Domestic US shipping only ('US', 'USA', 'United States'). |
| address_to.verify | boolean (default true) | Optional | Optional boolean (default true). Determines whether carrier address verification is performed via 2-layer engine (internal cache + EasyPost) when pushed to factory. Set false to bypass verification for unindexed addresses. Note: If false, Albovo bears no responsibility for missing, undelivered, or returned shipments. |
| address_to.email | string | Optional | Recipient contact email. |
| address_to.phone | string | Optional | Recipient contact phone number. |
| shipment | object | Conditional | Prepaid carrier shipment details. Required if no recipient delivery address is provided. |
| shipment.tracking_number | string | Conditional | Carrier tracking number. |
| shipment.label_url | string (url) | Conditional | Direct accessible URL to shipping label file (PDF or PNG). |
| items | array[object] | Required | Array of order items (minimum 1 item required). |
| items[].sku | string | Required | Catalog SKU formatted as SHIRTCODE-COLOR-SIZE (e.g. G5000-BLACK-M). |
| items[].quantity | integer | Required | Quantity of garments for this variant (minimum 1). |
| items[].preview_files | object | Conditional | Mockup preview image URLs (front, back, sleeve_left, sleeve_right). Must bi-directionally match print files. |
| items[].print_files | object | Required | High-resolution print design URLs (front, back, sleeve_left, sleeve_right). At least one main print (front/back) required. |
curl -X POST "https://api.albovo.com/api/v2/orders/rate" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_ref": "ORD-ESTIMATE-1001",
"address_to": {
"name": "Jane Doe",
"address1": "123 Main Street",
"address2": "Suite 4B",
"city": "San Francisco",
"region": "CA",
"zip": "94105",
"country": "US"
},
"items": [
{
"sku": "G5000-BLACK-M",
"quantity": 2,
"print_files": { "front": "https://example.com/designs/front.png" },
"preview_files": { "front": "https://example.com/mockups/front.png" }
}
]
}'{
"success": true,
"message": "Order rate calculated successfully",
"data": {
"order_id": null,
"order_ref": "ORD-ESTIMATE-1001",
"status": "Estimate",
"address_to": {
"name": "Jane Doe",
"address1": "123 Main Street",
"address2": "Suite 4B",
"city": "San Francisco",
"region": "CA",
"zip": "94105",
"country": "US",
"phone": "+1 (415) 555-1234",
"email": "jane.doe@example.com"
},
"shipment": {
"tracking_number": "",
"label_url": ""
},
"total_items_price": 31.5,
"shipping_price": 7.5,
"delivery": {
"shipping": 7.5,
"label_fee": 0,
"rush_production": 0
},
"total_price": 39,
"created_at": null,
"updated_at": null,
"items": [
{
"id": null,
"sku": "G5000-BLACK-M",
"quantity": 2,
"item_price": 11,
"item_price_total": 22,
"preview_files": {
"front": "https://example.com/mockups/front_g5000.png",
"back": "https://example.com/mockups/back_g5000.png",
"sleeve_left": null,
"sleeve_right": null,
"shoulder_front": null,
"shoulder_back": null
},
"print_files": {
"front": "https://example.com/designs/front_g5000.png",
"back": "https://example.com/designs/back_g5000.png",
"sleeve_left": null,
"sleeve_right": null,
"shoulder_front": null,
"shoulder_back": null
}
},
{
"id": null,
"sku": "BC3001-WHITE-L",
"quantity": 1,
"item_price": 9.5,
"item_price_total": 9.5,
"preview_files": {
"front": "https://example.com/mockups/front_bc3001.png",
"back": null,
"sleeve_left": null,
"sleeve_right": null,
"shoulder_front": null,
"shoulder_back": null
},
"print_files": {
"front": "https://example.com/designs/front_bc3001.png",
"back": null,
"sleeve_left": null,
"sleeve_right": null,
"shoulder_front": null,
"shoulder_back": null
}
}
]
}
}/api/v2/orders/{order_id}API KeyEdit Order
Updates address details, shipping label, or artwork items for an order in 'Awaiting Payment' status. Orders already 'In Production' cannot be modified.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
| Content-Type | Required | JSON payload body |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| order_id (path) | string | Required | Albovo order ID (e.g. ORD-20260811-A1B2C), as returned by Create Order. Your own order_ref is not accepted here. |
| address_to | object | Optional | Updated delivery address object |
| address_to.name | string | Optional | Recipient full name. |
| address_to.raw_address | string | Optional | Full single-line US shipping address string (e.g. '123 Main St Suite 4B, San Francisco, CA 94105'). Mutually exclusive with address1/city/region/zip. |
| address_to.address1 | string | Optional | Primary street address. |
| address_to.city | string | Optional | City / District. |
| address_to.region | string | Optional | US state or territory: all 62 valid USPS codes (e.g. CA, NY, PR, TX) or full state name (auto-mapped). |
| address_to.zip | string | Optional | US ZIP code: 5 digits ('90210') or 9 digits with hyphen ('90210-1234'). |
| address_to.country | string | Optional | Destination country. Defaults to 'US'. Domestic US shipping only ('US', 'USA', 'United States'). |
| address_to.verify | boolean (default true) | Optional | Optional boolean (default true). Determines whether carrier address verification is performed via 2-layer engine (internal cache + EasyPost) when pushed to factory. Set false to bypass verification for unindexed addresses. Note: If false, Albovo bears no responsibility for missing, undelivered, or returned shipments. |
| shipment | object | Optional | Updated tracking_number and label_url |
| print_technique | string | Deprecated | This field is no longer used. |
| items | array[object] | Optional | Updated items array replacing all existing items in the order |
| items[].sku | string | Required | Catalog SKU formatted as SHIRTCODE-COLOR-SIZE (e.g. G5000-BLACK-M). |
| items[].quantity | integer | Required | Quantity of garments for this variant (minimum 1). |
| items[].preview_files | object | Conditional | Mockup preview image URLs (front, back, sleeve_left, sleeve_right). Must bi-directionally match print files. |
| items[].preview_files.front | string (url) | Optional | Mockup preview URL for front placement. |
| items[].preview_files.back | string (url) | Optional | Mockup preview URL for back placement. |
| items[].preview_files.sleeve_left | string (url) | Optional | Mockup preview URL for left sleeve placement. |
| items[].preview_files.sleeve_right | string (url) | Optional | Mockup preview URL for right sleeve placement. |
| items[].preview_files.shoulder_front | string (url) | Optional | Mockup preview URL for front shoulder placement. |
| items[].preview_files.shoulder_back | string (url) | Optional | Mockup preview URL for back shoulder placement. |
| items[].print_files | object | Required | High-resolution print design URLs (front, back, sleeve_left, sleeve_right). At least one main print (front/back) required. |
| items[].print_files.front | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for front placement. |
| items[].print_files.back | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for back placement. |
| items[].print_files.sleeve_left | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for left sleeve placement. |
| items[].print_files.sleeve_right | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for right sleeve placement. |
| items[].print_files.shoulder_front | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for front shoulder placement. Only for products that list this print area. |
| items[].print_files.shoulder_back | string (url) | Optional | High-resolution print artwork URL (300 DPI PNG) for back shoulder placement. Only for products that list this print area. |
curl -X PUT "https://api.albovo.com/api/v2/orders/ORD-20260811-A1B2C" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"address_to": {
"name": "Jane Doe Updated",
"address1": "456 Market Street",
"city": "San Francisco",
"region": "CA",
"zip": "94103",
"country": "US"
},
"shipment": {
"tracking_number": "TRK987654321",
"label_url": "https://example.com/labels/label_updated.pdf"
},
"items": [
{
"sku": "G5000-BLACK-L",
"quantity": 3,
"preview_files": {
"front": "https://example.com/mockups/front_v2.png"
},
"print_files": {
"front": "https://example.com/designs/front_v2.png"
}
}
]
}'{
"success": true,
"message": "Order updated successfully",
"data": {
"order_id": "ORD-20260811-A1B2C",
"status": "Awaiting Payment",
"updated_at": "2026-08-13T09:41:00+07:00",
"total_price": 25
}
}/api/v2/orders/push-to-factoryAPI KeyPush Orders to Factory
Transitions orders from 'Awaiting Payment' to 'In Production'. Automatically validates wallet coin balance and deducts order costs per item. Unfunded orders are skipped and returned in failed_orders.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
| Content-Type | Required | JSON payload body |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| internal_ids | array[string] | Required | Array of Albovo order IDs to process (e.g. ['ORD-20260811-A1B2C']). Your own order_ref values are not accepted. |
curl -X POST "https://api.albovo.com/api/v2/orders/push-to-factory" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"internal_ids": [
"ORD-20260811-A1B2C",
"ORD-20260811-D3E4F"
]
}'{
"success": true,
"message": "Push to factory processing completed",
"data": {
"meta": {
"total_processed": 2,
"success_count": 1,
"failed_count": 1
},
"success_orders": [
{
"internal_id": "ORD-20260811-A1B2C"
}
],
"failed_orders": [
{
"internal_id": "ORD-20260811-D3E4F",
"reason": "Insufficient balance (-1995.00 coins, credit limit 2000.00, 5.00 available, 45.00 required)",
"error_code": "insufficient_balance",
"order_total": 45,
"balance": -1995,
"credit_limit": 2000,
"available_balance": 5
}
]
}
}/api/v2/wallet/balanceAPI KeyGet Wallet Balance
Retrieves the current available credit/coin balance (in USD) for the authenticated client account.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Persistent API Key generated from Dashboard β API Keys (or 'Authorization: Bearer <API_KEY>') |
curl -X GET "https://api.albovo.com/api/v2/wallet/balance" \ -H "X-API-Key: YOUR_API_KEY"
{
"success": true,
"message": "Wallet balance retrieved successfully",
"data": {
"balance": -250,
"credit_limit": 2000,
"available_balance": 1750
}
}/api/v2/productsAPI KeyList Products
Step 1 of reading the catalog. Returns a short list of active products (ID, code, name and category), ordered by ID. Use a product_code from it to get the product's details and SKUs.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Your API key from Dashboard β API Keys (or send 'Authorization: Bearer <API_KEY>'). |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| page | integer | Optional | Page number (starts at 1) (default: 1) |
| per_page | integer | Optional | Products per page (default: 20, max: 100) (default: 20) |
curl -X GET "https://api.albovo.com/api/v2/products?page=1&per_page=20" \ -H "X-API-Key: YOUR_API_KEY"
{
"success": true,
"message": "Products retrieved successfully",
"data": {
"items": [
{
"id": 1,
"product_code": "G5000",
"name": "Gildan 5000 Heavy Cotton T-Shirt",
"category": "apparel"
},
{
"id": 2,
"product_code": "G18500",
"name": "Gildan 18500 Heavy Blend Hoodie",
"category": "apparel"
}
],
"meta_data": {
"total": 48,
"current_page": 1,
"per_page": 20,
"last_page": 3
}
}
}/api/v2/products/{product_id_or_code}API KeyGet Product Details
Step 2. Returns one product (ID, code, name, category and description) with your tier's prices. To price an item, read the prices entry that matches it most closely: color and size, then color, then size, then the product's own entry (all three null). An entry for the item's style wins over one without a style.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Your API key from Dashboard β API Keys (or send 'Authorization: Bearer <API_KEY>'). |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| product_id_or_code | string (path) | Required | Product ID, product code or SKU (e.g. 1, G5000 or G5000-BLACK-L). |
curl -X GET "https://api.albovo.com/api/v2/products/G5000" \ -H "X-API-Key: YOUR_API_KEY"
{
"success": true,
"message": "Product details retrieved successfully",
"data": {
"id": 1,
"product_code": "G5000",
"name": "Gildan 5000 Heavy Cotton T-Shirt",
"category": "apparel",
"description": "Classic heavyweight cotton tee.",
"prices": [
{
"size": null,
"color": null,
"style": null,
"base_cost": 6.5,
"extra_double_sided_print": 3,
"extra_special_print": 2,
"extra_shoulder_print": 1.5,
"shipping_first_item": 4.5,
"shipping_additional_item": 2,
"label_fee": 0.5,
"rush_production": 2
},
{
"size": "2XL",
"color": null,
"style": null,
"base_cost": 8.5,
"extra_double_sided_print": 3,
"extra_special_print": 2,
"extra_shoulder_print": 1.5,
"shipping_first_item": 4.5,
"shipping_additional_item": 2,
"label_fee": 0.5,
"rush_production": 2
}
]
}
}/api/v2/products/{product_id_or_code}/skusAPI KeyList Product SKUs
Step 3. Returns the product's orderable SKUs, ordered by ID, with the color, size and style each one stands for. Use these SKUs as items[].sku when creating an order.
| Field / Parameter | Requirement | Description |
|---|---|---|
| X-API-Key | Required | Your API key from Dashboard β API Keys (or send 'Authorization: Bearer <API_KEY>'). |
| Field / Parameter | Type | Requirement | Description |
|---|---|---|---|
| product_id_or_code | string (path) | Required | Product ID, product code or SKU (e.g. 1, G5000 or G5000-BLACK-L). |
| page | integer | Optional | Page number (starts at 1) (default: 1) |
| per_page | integer | Optional | SKUs per page (default: 50, max: 100) (default: 50) |
curl -X GET "https://api.albovo.com/api/v2/products/G5000/skus?page=1&per_page=50" \ -H "X-API-Key: YOUR_API_KEY"
{
"success": true,
"message": "Product SKUs retrieved successfully",
"data": {
"product_code": "G5000",
"items": [
{
"sku": "G5000-BLACK-S",
"color": "Black",
"size": "S",
"style": null
},
{
"sku": "G5000-BLACK-M",
"color": "Black",
"size": "M",
"style": null
},
{
"sku": "G5000-WHITE-S",
"color": "White",
"size": "S",
"style": null
}
],
"meta_data": {
"total": 120,
"current_page": 1,
"per_page": 50,
"last_page": 3
}
}
}