Files
medusa-store/www/apps/api-reference/specs/admin/paths/admin_customer-groups.yaml
github-actions[bot] 7ac734ca21 chore(docs): Updated API Reference (automated) (#12826)
Automated changes by [create-pull-request](https://github.com/peter-evans/create-pull-request) GitHub action

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: Shahed Nasser <27354907+shahednasser@users.noreply.github.com>
2025-06-25 12:18:41 +00:00

1102 lines
40 KiB
YAML

get:
operationId: GetCustomerGroups
summary: List Customer Groups
description: >-
Retrieve a list of customer groups. The customer groups can be filtered by
fields such as `id`. The customer groups can also be sorted or paginated.
x-authenticated: true
parameters:
- name: fields
in: query
description: >-
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.
required: false
schema:
type: string
title: fields
description: >-
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.
externalDocs:
url: '#select-fields-and-relations'
- name: offset
in: query
description: The number of items to skip when retrieving a list.
required: false
schema:
type: number
title: offset
description: The number of items to skip when retrieving a list.
externalDocs:
url: '#pagination'
- name: limit
in: query
description: Limit the number of items returned in the list.
required: false
schema:
type: number
title: limit
description: Limit the number of items returned in the list.
externalDocs:
url: '#pagination'
- name: order
in: query
description: >-
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 `-`.
required: false
schema:
type: string
title: order
description: >-
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 `-`.
- name: q
in: query
description: Search term to filter the customer group's searchable properties.
required: false
schema:
type: string
title: q
description: Search term to filter the customer group's searchable properties.
- name: id
in: query
required: false
schema:
oneOf:
- type: string
title: id
description: Filter by a customer group's IDs.
- type: array
description: Filter by customer group IDs.
items:
type: string
title: id
description: A customer group's ID.
- name: name
in: query
required: false
schema:
oneOf:
- type: string
title: name
description: Filter by a customer group's name.
- type: array
description: Filter by customer group names.
items:
type: string
title: name
description: A customer group's name.
- name: customers
in: query
required: false
schema:
oneOf:
- type: string
title: customers
description: Filter by the ID of a customer to retrieve its groups.
- type: array
description: Filter by customer IDs to retrieve their groups.
items:
type: string
title: customers
description: A customer's ID.
- $ref: ../components/schemas/AdminCustomerInGroupFilters.yaml
- name: created_by
in: query
required: false
schema:
oneOf:
- type: string
title: created_by
description: >-
Filter by an ID of a user to retrieve the customer groups they
created.
- type: array
description: >-
Filter by the IDs of users to retrieve the customer groups they
created.
items:
type: string
title: created_by
description: The user's ID.
- name: created_at
in: query
description: Filter the customer group by its creation date.
required: false
schema:
type: object
description: Filter the customer group by its creation date.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: An exact match.
$ne:
type: string
title: $ne
description: Filter by values not equal to this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value not to match.
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter.
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: The value to match.
$ne:
type: string
title: $ne
description: Filter by values not matching this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value to not match
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
- type: array
description: >-
Filter by values not matching the values of this
parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for
numbers and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter.
Useful for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for
numbers and dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter.
Useful for numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: >-
Apply a case-insensitive `like` filter. Useful for strings
only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: >-
Filter arrays that have overlapping values with this
parameter.
items:
type: string
title: $overlap
description: The value to match.
$contains:
type: array
description: >-
Filter arrays that contain some of the values of this
parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: >-
Filter by whether a value for this parameter exists (not
`null`).
- type: array
description: Filter by values not matching those in this parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for numbers
and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter. Useful
for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for numbers and
dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter. Useful for
numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: Apply a case-insensitive `like` filter. Useful for strings only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: Filter arrays that have overlapping values with this parameter.
items:
type: string
title: $overlap
description: The values to match.
$contains:
type: array
description: Filter arrays that contain some of the values of this parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: Filter by whether a value for this parameter exists (not `null`).
- name: updated_at
in: query
description: Filter the customer groups by their update date.
required: false
schema:
type: object
description: Filter the customer groups by their update date.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: An exact match.
$ne:
type: string
title: $ne
description: Filter by values not equal to this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value not to match.
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter.
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: The value to match.
$ne:
type: string
title: $ne
description: Filter by values not matching this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value to not match
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
- type: array
description: >-
Filter by values not matching the values of this
parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for
numbers and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter.
Useful for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for
numbers and dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter.
Useful for numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: >-
Apply a case-insensitive `like` filter. Useful for strings
only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: >-
Filter arrays that have overlapping values with this
parameter.
items:
type: string
title: $overlap
description: The value to match.
$contains:
type: array
description: >-
Filter arrays that contain some of the values of this
parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: >-
Filter by whether a value for this parameter exists (not
`null`).
- type: array
description: Filter by values not matching those in this parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for numbers
and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter. Useful
for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for numbers and
dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter. Useful for
numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: Apply a case-insensitive `like` filter. Useful for strings only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: Filter arrays that have overlapping values with this parameter.
items:
type: string
title: $overlap
description: The values to match.
$contains:
type: array
description: Filter arrays that contain some of the values of this parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: Filter by whether a value for this parameter exists (not `null`).
- name: deleted_at
in: query
description: Filter the customer groups by their deletion date.
required: false
schema:
type: object
description: Filter the customer groups by their deletion date.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's content
is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: An exact match.
$ne:
type: string
title: $ne
description: Filter by values not equal to this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value not to match.
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter.
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
properties:
$and:
type: array
description: >-
Join query parameters with an AND condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $and
$or:
type: array
description: >-
Join query parameters with an OR condition. Each object's
content is the same type as the expected query parameters.
items:
type: object
title: $or
$eq:
oneOf:
- type: string
title: $eq
description: Filter by an exact match.
- type: array
description: Filter by multiple exact matches.
items:
type: string
title: $eq
description: The value to match.
$ne:
type: string
title: $ne
description: Filter by values not matching this parameter.
$in:
type: array
description: Filter by values in this array.
items:
type: string
title: $in
description: The value to match.
$nin:
type: array
description: Filter by values not in this array.
items:
type: string
title: $nin
description: The value to not match
$not:
oneOf:
- type: string
title: $not
description: Filter by values not matching this parameter
- type: object
description: >-
Filter by values not matching the conditions in this
parameter.
- type: array
description: >-
Filter by values not matching the values of this
parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for
numbers and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter.
Useful for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for
numbers and dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter.
Useful for numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: >-
Apply a case-insensitive `like` filter. Useful for strings
only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: >-
Filter arrays that have overlapping values with this
parameter.
items:
type: string
title: $overlap
description: The value to match.
$contains:
type: array
description: >-
Filter arrays that contain some of the values of this
parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: >-
Filter by whether a value for this parameter exists (not
`null`).
- type: array
description: Filter by values not matching those in this parameter.
items:
type: string
title: $not
description: The values to not match.
$gt:
type: string
title: $gt
description: >-
Filter by values greater than this parameter. Useful for numbers
and dates only.
$gte:
type: string
title: $gte
description: >-
Filter by values greater than or equal to this parameter. Useful
for numbers and dates only.
$lt:
type: string
title: $lt
description: >-
Filter by values less than this parameter. Useful for numbers and
dates only.
$lte:
type: string
title: $lte
description: >-
Filter by values less than or equal to this parameter. Useful for
numbers and dates only.
$like:
type: string
title: $like
description: Apply a `like` filter. Useful for strings only.
$re:
type: string
title: $re
description: Apply a regex filter. Useful for strings only.
$ilike:
type: string
title: $ilike
description: Apply a case-insensitive `like` filter. Useful for strings only.
$fulltext:
type: string
title: $fulltext
description: Filter to apply on full-text properties.
$overlap:
type: array
description: Filter arrays that have overlapping values with this parameter.
items:
type: string
title: $overlap
description: The values to match.
$contains:
type: array
description: Filter arrays that contain some of the values of this parameter.
items:
type: string
title: $contains
description: The values to match.
$contained:
type: array
description: Filter arrays that contain all values of this parameter.
items:
type: string
title: $contained
description: The values to match.
$exists:
type: boolean
title: $exists
description: Filter by whether a value for this parameter exists (not `null`).
- name: $and
in: query
description: >-
Join query parameters with an AND condition. Each object's content is
the same type as the expected query parameters.
required: false
schema:
type: array
description: >-
Join query parameters with an AND condition. Each object's content is
the same type as the expected query parameters.
items:
type: object
title: $and
- name: $or
in: query
description: >-
Join query parameters with an OR condition. Each object's content is the
same type as the expected query parameters.
required: false
schema:
type: array
description: >-
Join query parameters with an OR condition. Each object's content is
the same type as the expected query parameters.
items:
type: object
title: $or
- name: with_deleted
in: query
description: Whether to include deleted records in the result.
required: false
schema:
type: boolean
title: with_deleted
description: Whether to include deleted records in the result.
security:
- api_token: []
- cookie_auth: []
- jwt_token: []
x-codeSamples:
- lang: JavaScript
label: JS SDK
source:
$ref: ../code_samples/JavaScript/admin_customer-groups/get.js
- lang: Shell
label: cURL
source:
$ref: ../code_samples/Shell/admin_customer-groups/get.sh
tags:
- Customer Groups
responses:
'200':
description: OK
content:
application/json:
schema:
allOf:
- type: object
description: The paginated list of customer groups.
required:
- limit
- offset
- count
properties:
limit:
type: number
title: limit
description: The maximum number of items retrieved.
offset:
type: number
title: offset
description: >-
The number of items skipped before retrieving the returned
items.
count:
type: number
title: count
description: The total number of items
- type: object
description: The paginated list of customer groups.
required:
- customer_groups
properties:
customer_groups:
type: array
description: The list of customer groups.
items:
$ref: ../components/schemas/AdminCustomerGroup.yaml
'400':
$ref: ../components/responses/400_error.yaml
'401':
$ref: ../components/responses/unauthorized.yaml
'404':
$ref: ../components/responses/not_found_error.yaml
'409':
$ref: ../components/responses/invalid_state_error.yaml
'422':
$ref: ../components/responses/invalid_request_error.yaml
'500':
$ref: ../components/responses/500_error.yaml
post:
operationId: PostCustomerGroups
summary: Create Customer Group
description: Create a customer group.
x-authenticated: true
parameters:
- name: fields
in: query
description: >-
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.
required: false
schema:
type: string
title: fields
description: >-
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.
externalDocs:
url: '#select-fields-and-relations'
security:
- api_token: []
- cookie_auth: []
- jwt_token: []
requestBody:
content:
application/json:
schema:
$ref: ../components/schemas/AdminCreateCustomerGroup.yaml
x-codeSamples:
- lang: JavaScript
label: JS SDK
source:
$ref: ../code_samples/JavaScript/admin_customer-groups/post.js
- lang: Shell
label: cURL
source:
$ref: ../code_samples/Shell/admin_customer-groups/post.sh
tags:
- Customer Groups
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: ../components/schemas/AdminCustomerGroupResponse.yaml
'400':
$ref: ../components/responses/400_error.yaml
'401':
$ref: ../components/responses/unauthorized.yaml
'404':
$ref: ../components/responses/not_found_error.yaml
'409':
$ref: ../components/responses/invalid_state_error.yaml
'422':
$ref: ../components/responses/invalid_request_error.yaml
'500':
$ref: ../components/responses/500_error.yaml
x-workflow: createCustomerGroupsWorkflow
x-events: []