GET
/
admin
/
promotions
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.promotion.list()
.then(({ promotions, count, limit, offset }) => {
  console.log(promotions)
})
{
"limit": 123,
"offset": 123,
"count": 123,
"promotions": [
{
"application_method": {
"promotion": {},
"target_rules": [
{
"id": "<string>",
"description": "<string>",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"buy_rules": [
{
"id": "<string>",
"description": "<string>",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"id": "<string>",
"type": "fixed",
"target_type": "items",
"allocation": "each",
"value": 123,
"currency_code": "usd",
"max_quantity": 123,
"buy_rules_min_quantity": 123,
"apply_to_quantity": 123
},
"rules": [
{
"id": "<string>",
"description": "<string>",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"id": "<string>",
"code": "OFF50",
"type": "standard",
"is_automatic": true,
"campaign_id": "<string>",
"campaign": {
"id": "<string>",
"name": "<string>",
"description": "<string>",
"currency": "<string>",
"campaign_identifier": "<string>",
"starts_at": "<string>",
"ends_at": "<string>",
"budget": {
"id": "<string>",
"type": "spend",
"currency_code": "<string>",
"limit": 123,
"used": 123
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z",
"status": "draft",
"is_tax_inclusive": true
}
]
}

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.

offset
number

The number of items to skip when retrieving a list.

limit
number

Limit the number of items returned in the list.

order
string

The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with -.

q
string

Search term to filter the promotion's searchable attributes.

code

Filter by a promotion code.

campaign_id

Filter by a campaign's ID to retrieve its associated promotions.

application_method
object

Apply filters on the application methods to retrieve the promotions of the matching application methods.

created_at
object

Filter by a promotion's creation date.

updated_at
object

Filter by a promotion's update date.

deleted_at
object

Filter by a promotion's deletion date.

$and
$and · object[]

Join query parameters with an AND condition. Each object's content is the same type as the expected query parameters.

$or
$or · object[]

Join query parameters with an OR condition. Each object's content is the same type as the expected query parameters.

currency_code

Filter by a currency code. The promotions are filtered based on their application method's currency code.

application_method_type

Filter by an application method type. The promotions are filtered based on their application method's type.

with_deleted
boolean

Whether to include deleted records in the result.

Response

200
application/json

OK

The paginated list of promotions.