<!-- Markdown copy of https://docs.creatorain.com/reference/operations/listvideos/ -->
# The videos posted from this account's locations, newest first

**Not live yet:** the v1 API and its hosts are not open. See [Sandbox](/get-started/sandbox/).

GET

/videos

Select code sampleFetchcURL

```js
const url = 'https://api.creatorain.com/v1/videos?limit=50';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```sh
curl --request GET \
  --url 'https://api.creatorain.com/v1/videos?limit=50' \
  --header 'Authorization: Bearer <token>'
```

-   Live (crp\_live\_ keys)
-   Sandbox (crp\_test\_ keys)

Scope `read`. Live videos only. A video is this account’s when it is stated at one of its locations, or, stated at none, linked to a visit at one, or its creator was booked at one. `counted_on_bill` is true only for a video stated at its location: those are what the month’s pace and the bill count, so the list can hold videos not counted on the bill. `stats` is null until the public post was first read. Creators appear by public handle only.

## Authorizations

-   **[bearerAuth](/reference/#bearerauth)**

## Parameters

### Query Parameters

**location**

string

/^loc\_\[0-9a-f\]{32}$/

Only this location’s items. Another account’s location is `404 not_found` (field `location`).

**cursor**

string

<= 512 characters

The `next_cursor` of the previous page, unchanged. Omit it for the first page. Anything else is `400 parameter_invalid` (field `cursor`).

**limit**

integer

default: 50 \>= 1 <= 200

Items a page, 1 to 200.

## Responses

### 200

One page of videos.

Media typeapplication/json

object

**object**

required

string

Allowed values: list

**data**

required

Array<object>

object

**object**

required

string

Allowed values: video

**id**

required

string

**livemode**

required

boolean

**location\_id**

required

string

**visit\_id**

required

The visit this video is linked to, at the same location; else null.

string

nullable

**platform**

required

string

nullable

**url**

required

string format: uri

nullable

**published\_at**

required

On the store’s offset.

string format: date-time

nullable

**timezone**

required

string

nullable

**status**

required

string

Allowed values: live

**counted\_on\_bill**

required

Stated at its location, so counted by the month’s pace and the bill. A linked or booked-creator video is listed with false.

boolean

**creator**

required

object

**handle**

required

string

nullable

**is\_collab**

required

The store’s account is a co-author of the public post.

boolean

**stats**

required

Null until the public post was first read.

object

**views**

required

integer

nullable

**likes**

required

integer

nullable

**comments**

required

integer

nullable

**measured\_at**

required

object

**views**

required

string format: date-time

nullable

**likes**

required

string format: date-time

nullable

**comments**

required

string format: date-time

nullable

**next\_cursor**

required

string

nullable

#### Example

```json
{
  "object": "list",
  "data": [
    {
      "object": "video",
      "id": "vid_3f2a9c1e5b7d4a6f8e0c2b4d6f8a0c2e",
      "platform": "tiktok",
      "status": "live"
    }
  ]
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

**RateLimit-Limit**

integer

##### Example

```json
600
```

Requests allowed in the current minute for this workspace (600).

**RateLimit-Remaining**

integer

Requests left in the current minute for this workspace.

**RateLimit-Reset**

integer

Seconds until the current window resets.

### 400

Parameter\_invalid (with `field`) or invalid\_json.

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

### 401

Invalid\_key, test\_key\_on\_live or live\_key\_on\_sandbox.

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

### 403

Scope\_missing or forbidden\_ip.

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

### 404

Not\_found.

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

### 429

Rate\_limited (600 a minute per workspace, an onboarding create limit, or an address blocked after failed authentication), or slow\_down (an onboarding session polled too fast).

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

**Retry-After**

integer

\>= 1

Seconds to wait before retrying (at least 1).

### 500

Internal\_error (500) or service\_unavailable (503). The message never carries a cause.

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.

### 503

Service\_unavailable. The read is unavailable right now (for the bill preview, an account over 2000 locations).

Media typeapplication/json

object

**error**

required

object

**type**

required

string

Allowed values: invalid\_request\_error authentication\_error permission\_error idempotency\_error rate\_limit\_error api\_error

**code**

required

string

Allowed values: parameter\_invalid invalid\_json idempotency\_key\_invalid idempotency\_key\_required customization\_not\_supported videos\_per\_month\_out\_of\_range batch\_invalid terms\_not\_accepted invalid\_key test\_key\_on\_live live\_key\_on\_sandbox insufficient\_balance scope\_missing forbidden\_ip forbidden live\_key\_requires\_top\_up limit\_raise\_requires\_dashboard not\_found idempotency\_conflict idempotency\_in\_progress conflict location\_already\_in\_network external\_id\_conflict dispute\_open request\_too\_large address\_not\_verified not\_food\_business metro\_not\_served package\_not\_available account\_location\_limit commit\_limit\_exceeded top\_up\_exceeds\_feasible no\_saved\_card rate\_limited quota\_exceeded slow\_down internal\_error service\_unavailable

**message**

required

string

**field**

The request field at fault

string

**doc\_url**

required

string format: uri

**request\_id**

required

string format: uuid

**items**

Batch\_invalid only. Every refused location, by its index in the request.

Array<object>

object

**index**

required

integer

**code**

required

One of the error codes above.

string

**field**

string

**message**

required

string

#### Example

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "doc_url": "https://www.creatorain.com/api/errors#scope_missing",
    "items": [
      {
        "field": "locations.1.videos_per_month"
      }
    ]
  }
}
```

#### Headers

**Request-Id**

string format: uuid

This request’s id. Equal to error.request\_id; quote it to support.
