> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mesa.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# mesa.repos.listUpstreamSyncs()

> List syncs for a repository's upstream.

List syncs for one repository's upstream, newest first.

```ts theme={null}
const { syncs, next_cursor, has_more } = await mesa.repos.listUpstreamSyncs({
  repo: 'app',
  limit: 20,
});

for (const sync of syncs) {
  console.log(sync.direction, sync.status, sync.created_at);
}
```

## Options

<ParamField path="org" type="string | undefined">
  Organization override.
</ParamField>

<ParamField path="repo" type="string" required>
  Repository name.
</ParamField>

<ParamField path="cursor" type="string | undefined">
  Opaque pagination cursor from a previous response.
</ParamField>

<ParamField path="limit" type="number | undefined">
  Maximum number of syncs to return. The server maximum is `100`.
</ParamField>

## Response

<ResponseField name="next_cursor" type="string | null">
  Cursor for the next page, or `null` when no more results remain.
</ResponseField>

<ResponseField name="has_more" type="boolean">
  Whether another page is available.
</ResponseField>

<ResponseField name="syncs" type="array">
  Sync objects with `id`, `repo_id`, `direction`, `status`, `attempt`, `stats`, `error`, `created_at`, `started_at`, and `finished_at`.
</ResponseField>

## Required scope

`read`
