---
title: "Reorder MembershipTypes"
method: PUT
path: "/customers/ordered-membership-types"
tags: ["MembershipTypes"]
---

# Reorder MembershipTypes

`PUT /customers/ordered-membership-types`

Persists a new display order for the caller's `MembershipType`s
by writing the supplied IDs back to each type's `order` column in
the order they appear in the array. The first ID becomes order
`0`, the second `1`, and so on.

The array must contain only IDs the caller is authorised to
manage; IDs missing from the array keep their current `order`
value (i.e. the caller can reorder a subset without listing
every type). Returns the updated ordered list, matching
[`listOrderedMembershipTypes`](#operation/listOrderedMembershipTypes).

## Request body

- object
  - `membership_type_ids` string[], required — The `MembershipType` IDs in the new display order. The first ID becomes order `0`, the second `1`, and so on. IDs not included in this array retain their existing `order` value.

## Response `200`

The `MembershipType`s were retrieved in display order.

- object
  - `data` SchemasMembershipTypeSummary2[], required
    - `id` string, uuid, required — The ID of the membership type.
    - `name` string, required — The display name of the membership type.

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `422` — The request didn't pass validation

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
