Create a supplier
POST
/suppliers
const url = 'https://api.oletapp.com/your-store/v1/suppliers';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"billing_address_1":"example","billing_address_2":"example","billing_city":"example","billing_country":"example","billing_email":"hello@example.com","billing_fax":"example","billing_first_name":"example","billing_last_name":"example","billing_phone":"example","billing_state":"example","billing_zipcode":"example","default_markup":1,"description":"example","name":"example","shipping_address_1":"example","shipping_address_2":"example","shipping_city":"example","shipping_country":"example","shipping_email":"hello@example.com","shipping_fax":"example","shipping_first_name":"example","shipping_last_name":"example","shipping_phone":"example","shipping_state":"example","shipping_zipcode":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.oletapp.com/your-store/v1/suppliers \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "billing_address_1": "example", "billing_address_2": "example", "billing_city": "example", "billing_country": "example", "billing_email": "hello@example.com", "billing_fax": "example", "billing_first_name": "example", "billing_last_name": "example", "billing_phone": "example", "billing_state": "example", "billing_zipcode": "example", "default_markup": 1, "description": "example", "name": "example", "shipping_address_1": "example", "shipping_address_2": "example", "shipping_city": "example", "shipping_country": "example", "shipping_email": "hello@example.com", "shipping_fax": "example", "shipping_first_name": "example", "shipping_last_name": "example", "shipping_phone": "example", "shipping_state": "example", "shipping_zipcode": "example" }'Accepts every field the admin create form accepts, including billing/shipping contacts and default_markup (basis points). Duplicate names are allowed.
Requires scope: catalog:write
Authorizations
Section titled “Authorizations”Request Body
Section titled “Request Body”Media typeapplication/json
object
billing_country
string | null
billing_fax
string | null
billing_phone
string | null
name
required
string
shipping_country
string | null
shipping_fax
string | null
shipping_phone
string | null
Examplegenerated
{ "billing_address_1": "example", "billing_address_2": "example", "billing_city": "example", "billing_country": "example", "billing_email": "hello@example.com", "billing_fax": "example", "billing_first_name": "example", "billing_last_name": "example", "billing_phone": "example", "billing_state": "example", "billing_zipcode": "example", "default_markup": 1, "description": "example", "name": "example", "shipping_address_1": "example", "shipping_address_2": "example", "shipping_city": "example", "shipping_country": "example", "shipping_email": "hello@example.com", "shipping_fax": "example", "shipping_first_name": "example", "shipping_last_name": "example", "shipping_phone": "example", "shipping_state": "example", "shipping_zipcode": "example"}Responses
Section titled “Responses”Create a supplier
Media typeapplication/json
object
data
required
object
billing_address_1
required
string | null
billing_address_2
required
string | null
billing_city
required
string | null
billing_country
required
string | null
billing_email
required
string | null
billing_fax
required
string | null
billing_first_name
required
string | null
billing_last_name
required
string | null
billing_phone
required
string | null
billing_state
required
string | null
billing_zipcode
required
string | null
created_at
required
string format: date-time
default_markup
required
description
required
string | null
id
required
string format: uuid
name
required
string
shipping_address_1
required
string | null
shipping_address_2
required
string | null
shipping_city
required
string | null
shipping_country
required
string | null
shipping_email
required
string | null
shipping_fax
required
string | null
shipping_first_name
required
string | null
shipping_last_name
required
string | null
shipping_phone
required
string | null
shipping_state
required
string | null
shipping_zipcode
required
string | null
updated_at
required
string format: date-time
version
required
Opaque delta-sync version. Increases with every change; use it to detect updates.
string
Examplegenerated
{ "data": { "billing_address_1": "example", "billing_address_2": "example", "billing_city": "example", "billing_country": "example", "billing_email": "example", "billing_fax": "example", "billing_first_name": "example", "billing_last_name": "example", "billing_phone": "example", "billing_state": "example", "billing_zipcode": "example", "created_at": "2026-04-15T12:00:00Z", "default_markup": 1, "description": "example", "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "shipping_address_1": "example", "shipping_address_2": "example", "shipping_city": "example", "shipping_country": "example", "shipping_email": "example", "shipping_fax": "example", "shipping_first_name": "example", "shipping_last_name": "example", "shipping_phone": "example", "shipping_state": "example", "shipping_zipcode": "example", "updated_at": "2026-04-15T12:00:00Z", "version": "example" }}default
Section titled “default”An error response.
Media typeapplication/json
object
error
required
object
code
required
A machine-readable error code, e.g. VALIDATION_FAILED.
string
fields
Array<object>
object
field
required
string
message
required
string
message
required
A plain-English sentence describing what went wrong.
string
Example
{ "error": { "code": "UNAUTHORIZED" }}