---
title: "List sync issues"
method: GET
path: "/v1/workspaces/{workspace_id}/issues"
tags: ["Sync issues"]
---

# List sync issues

`GET /v1/workspaces/{workspace_id}/issues`

## Request

- Base URL: `https://api.stacksync.com`
- URL: `https://api.stacksync.com/v1/workspaces/{workspace_id}/issues`
- Auth: HTTP bearer

List the record changes the syncs of the workspace could not write, newest first, one page at a time. Filter by sync, destination app, table or one issue id.

## Path parameters

- `workspace_id` integer, required

## Query parameters

- `region` 'besg' | 'usnv', required
- `base_id` string, uuid
- `sync_id` string, uuid
- `app_id` string
- `table_id` string
- `issue_id` string, uuid
- `ordering_property` 'created_time' | 'last_modified_time'
- `ordering_direction` 'ASC' | 'DESC'
- `page_number` integer
- `page_size` integer

## Response `200`

A page of issues

- SyncIssueListResponse: A page of issues
  - `data` SyncIssue[], required: The issues of the page
    - `issue_id` string, uuid, required: The issue
    - `base_id` string, uuid, required: The sync
    - `destination_app_id` string, required: The app the change could not be written to
    - `destination_app_type` string, required: That app, as shown in Stacksync
    - `destination_table_id` string: The id of the table in that app
    - `destination_table_name` string: The name of the table in that app
    - `action` string, required: What the sync tried: `insert`, `update` or `delete`
    - `issue_message` string, required: Why the write failed, as the app answered
    - `changed_columns` object, nullable: The columns that changed, by name, with the value that could not be written
    - `source_record_id` string, nullable: The id of the record in the app the change came from
    - `destination_record_id` string, nullable: The id of the record in the destination app, null for a record not created yet
    - `created_time` string, required: When the issue first happened, ISO 8601 UTC
    - `last_modified_time` string, required: When the issue last happened, ISO 8601 UTC
  - `pagination` SyncIssuePagination, required: The page answered
    - `current_page` integer, required: The page answered, counted from 0
    - `next_page` integer: The next page, absent on the last page
    - `total_pages` integer: The number of full pages (total issues divided by page size, rounded down); absent when the page is empty
  - `total_number_of_issues` integer, required: The number of issues matching the filters

## Other responses

- `400`: The `region` is missing or not one of besg, usnv; `issue_id` or `base_id` is not a UUID, `page_number` is not an integer of 0 or more, `page_size` is not an integer of 1 to 1000, `ordering_property` or `ordering_direction` is not one of its values (`Invalid Request Params`); the issues could not be read (`Failed to get issues`)
- `403`: Forbidden: invalid API key, API key of another workspace, insufficient scope, workspace unavailable, or a non-GET request without `Content-Type: application/json`

---

[API](https://skmtc.dev/stacksync/apis/stacksync-api.md) - [All operations](https://skmtc.dev/stacksync/apis/stacksync-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stacksync/apis/stacksync-api/revisions/21f4ba4b214e?raw)
