---
title: "Get workspace membership history"
method: GET
path: "/api/fsm/workspaces/{workspace_id}/membership-history/"
tags: ["States"]
---

# Get workspace membership history

`GET /api/fsm/workspaces/{workspace_id}/membership-history/`

Read-only state history for workspace memberships (admin/owner of the workspace organization only).

## Path parameters

- `workspace_id` integer, required

## Query parameters

- `ordering` string
- `page` integer
- `page_size` integer
- `since` string, date-time
- `until` string, date-time
- `user_id` integer

## Response `200`

- PaginatedStateModelList
  - `count` integer, required
  - `next` string, uri, nullable
  - `previous` string, uri, nullable
  - `results` StateModel[], required
    - `context_data` unknown, required
    - `created_at` string, date-time, required
    - `id` string, uuid, required
    - `previous_state` string, nullable, required
    - `reason` string, nullable, required
    - `state` string, required
    - `transition_name` string, nullable, required
    - `triggered_by` TriggeredBy, required — A ModelSerializer that takes additional arguments for "fields", "omit" and "expand" in order to control which fields are displayed, and whether to replace simple values with complex, nested serializations
      - `email` string, email
      - `id` integer, required

---

[API](https://skmtc.net/humansignal/apis/label-studio-api.md) · [All operations](https://skmtc.net/humansignal/apis/label-studio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/humansignal/label-studio-api/versions/1b113b8df950/schema)
