Overview
Introduction to the Emfas REST API
The Emfas API allows you to programmatically manage your product catalog. Use it to sync products from external systems, build custom integrations, or automate your product data workflows.
Base URL
All API requests are made to:
https://api.emfas.ai/v1Request Format
The API accepts JSON request bodies for POST, PATCH, and PUT requests. Set the Content-Type header accordingly:
Content-Type: application/jsonResponse Format
All responses return JSON. A successful response typically contains the requested data:
{
"result": [
{
"identifier": "PROD-001",
"name": "Example Product",
"attributes": {}
}
]
}HTTP Methods
| Method | Usage |
|---|---|
GET | Retrieve resources |
POST | Create new resources |
PATCH | Update existing resources |
DELETE | Remove resources |
Getting Started
To start using the API:
- Enable API access — Contact the Emfas team if API access isn't available for your organization
- Generate an API key — Go to Settings in your Emfas workspace to create an API key
- Make your first request — Try listing your products to verify everything works
curl "https://api.emfas.ai/v1/products" \
-H "Authorization: Bearer YOUR_API_KEY"Core Concepts
If you're new to Emfas, these concepts from our documentation are helpful for understanding the API:
- Products — The main entities in your catalog
- Variants — Product variations (size, color, etc.)
- SKUs — Stock-keeping units, the sellable items
- Attributes — Custom fields that hold your product data
- Categories — Hierarchical organization of products
Product Hierarchy
Emfas uses a flexible product hierarchy with up to three levels:
- Product → Variant → SKU
Not all levels are required — some organizations use all three, some use only product + variant, and some use only products.
Hierarchy-Aware Filtering
When using the updated_after parameter, each endpoint includes changes from its parent levels:
| Endpoint | Catches changes on |
|---|---|
/products?updated_after=X | Product |
/variants?updated_after=X | Variant, Product |
/skus?updated_after=X | SKU, Variant, Product |
This means fetching from the lowest level you use will capture all relevant changes across the hierarchy. See Incremental Sync for more details.
Attributes in Responses
The API only returns attributes that have values. If an attribute has not been set, it will not appear in the response.
To see all available attributes in your workspace, use GET /v1/attributes. Attributes will appear in product, variant, and SKU responses once values have been set.
Need Help?
For questions about the API or your integration, contact us at integrations@emfas.ai.