POST
/
admin
/
fulfillments
JS SDK
import Medusa from "@medusajs/js-sdk"

export const sdk = new Medusa({
  baseUrl: import.meta.env.VITE_BACKEND_URL || "/",
  debug: import.meta.env.DEV,
  auth: {
    type: "session",
  },
})

sdk.admin.fulfillment.create({
  location_id: "sloc_123",
  provider_id: "my_fulfillment",
  delivery_address: {
    country_code: "us"
  },
  items: [
    {
      title: "Shirt",
      sku: "SHIRT",
      quantity: 1,
      barcode: "123"
    }
  ],
  labels: [],
  order: {},
  order_id: "order_123"
})
.then(({ fulfillment }) => {
  console.log(fulfillment)
})
{
"fulfillment": {
"id": "<string>",
"location_id": "<string>",
"provider_id": "<string>",
"shipping_option_id": "<string>",
"provider": {
"id": "<string>",
"is_enabled": true
},
"delivery_address": {
"id": "<string>",
"fulfillment_id": "<string>",
"company": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"address_1": "<string>",
"address_2": "<string>",
"city": "<string>",
"country_code": "<string>",
"province": "us-ca",
"postal_code": "<string>",
"phone": "<string>",
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
},
"items": [
{
"id": "<string>",
"title": "<string>",
"quantity": 123,
"sku": "<string>",
"barcode": "<string>",
"line_item_id": "<string>",
"inventory_item_id": "<string>",
"fulfillment_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"labels": [
{
"id": "<string>",
"tracking_number": "<string>",
"tracking_url": "<string>",
"label_url": "<string>",
"fulfillment_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"packed_at": "<string>",
"shipped_at": "<string>",
"delivered_at": "<string>",
"canceled_at": "<string>",
"data": {},
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

fields
string

Comma-separated fields that should be included in the returned data. if a field is prefixed with + it will be added to the default fields, using - will remove it from the default fields. without prefix it will replace the entire default fields.

Body

application/json

The filfillment's details.

location_id
string
required

The ID of the location the items are fulfilled from.

provider_id
string
required

The ID of the provider handling this fulfillment.

delivery_address
object
required

The address to deliver the items to.

items
object[]
required

The items to fulfill.

labels
object[]
required

The labels for the fulfillment's shipments.

order_id
string
required

The ID of the order this fulfillment is created for.

data
object
required

Any data useful for the fulfillment provider to handle the fulfillment.

metadata
object
required

The fulfillment's metadata, used to store custom key-value pairs.

shipping_option_id
string

The ID of the shipping option used in the order.

packed_at
string<date-time>

The date and time the fulfillment was packed.

shipped_at
string<date-time>

The date and time the fulfillment was shipped.

delivered_at
string<date-time>

The date and time the fulfillment was delivered.

canceled_at
string<date-time>

The date and time the fulfillment was canceled.

Response

OK

A fulfillment's details.

fulfillment
object
required

The fulfillment's details.