# Facebook Watch API Reference

Canonical: https://monsterapi.co/docs/api/facebook-watch

Read the Facebook Watch reference. Review parameters, response fields, examples, and current credit prices.

OpenAPI specification: [Facebook](https://monsterapi.co/docs/openapi/platforms/facebook.yaml).

---

Current operation prices: [public catalog](https://monsterapi.co/account/api/v1/public/api-prices). Prices use credits per request.

---

# Facebook: Video feed sections

`GET /facebook/api/watch/render`

Documentation: https://monsterapi.co/docs/api/facebook#facebook-video-feed-sections

Operation ID: `facebook_watch_render`

Returns video-feed sections, video previews and available continuation values. No parameters are required.

## Authentication

Send your billing API key in the `Authorization: Bearer <YOUR_API_KEY>` header. Your account login is separate.

## Inputs

## Responses

- 200: Requested information; unavailable optional values are null.

- 400: #/components/responses/GatewayBadRequest

- 401: #/components/responses/GatewayUnauthorized

- 402: #/components/responses/GatewayPaymentRequired

- 403: #/components/responses/GatewayForbidden

- 404: The requested object is absent, or Facebook does not show it to logged-out visitors. An empty page of an object that exists does not return `404`.

- 405: `method_not_allowed`: the endpoint answers GET alone, and any other method, HEAD included, is refused

Refused at the gateway: the path exists, but no operation on it takes the method of the request, HEAD included; `Allow` names the methods that do

- 409: #/components/responses/GatewayConflict

- 429: `rate_limited`: Facebook limited the requests or asked a logged-out visitor to sign in. Wait for the seconds in `Retry-After`, then repeat the request. Facebook publishes no numbers for these limits.

Refused at the gateway: the account calls faster than its rate limit allows

- 500: The requested information could not be returned.

- 501: The requested information is unavailable without signing in or is not supported.

- 503: The requested information is temporarily unavailable. Repeat the request later. `code` gives the cause:

- `upstream_error`: no answer came from Facebook, or Facebook answered with a server error. Wait for the seconds in `Retry-After`, then repeat the request.
- `upstream_stale`: the service is renewing its access to this information.
- `no_proxies`: the service cannot get this kind of information at the moment.
- `overloaded`: the service is handling too many requests at the same time. Repeat the request after a short pause, or send fewer requests at the same time.

Refused at the gateway: the check could not complete, the account is suspended, or the platform did not answer; each may pass later, and `Retry-After` comes only when the platform did not answer

## Credits

Check the live price in the documentation before sending. Platform 2xx and 4xx responses can use credits, including empty data. Gateway refusals and 5xx responses do not use credits. Each pagination request is a separate call.

https://monsterapi.co/docs/pricing

## Request template

Replace path placeholders and add the required query parameters from the Inputs section before sending.

```shell

curl --get 'https://api.monsterapi.co/facebook/api/watch/render' \
  -H 'Authorization: Bearer <YOUR_API_KEY>'

```

---

# Facebook: Video feed section videos

`GET /facebook/api/watch/section`

Documentation: https://monsterapi.co/docs/api/facebook#facebook-video-feed-section-videos

Operation ID: `facebook_watch_section`

Returns videos for one feed section. Pass section_id and optionally cursor; pages may repeat videos, which are identified by id.

## Authentication

Send your billing API key in the `Authorization: Bearer <YOUR_API_KEY>` header. Your account login is separate.

## Inputs

- `section_id` (query, required): Section ID from `sections[].id` in [/watch/render](https://monsterapi.co/docs/api/facebook-watch#facebook-video-feed-sections) or [/watch/topic](https://monsterapi.co/docs/api/facebook-watch#facebook-video-topic-sections).

- `cursor` (query, optional): `next_cursor` from [/watch/render](https://monsterapi.co/docs/api/facebook-watch#facebook-video-feed-sections) or [/watch/topic](https://monsterapi.co/docs/api/facebook-watch#facebook-video-topic-sections) for its populated section, or this endpoint for the same section. Pass it unchanged; videos can repeat between pages.

## Responses

- 200: Requested information in data and its named fields; unavailable optional values are null.

- 400: A request parameter is invalid.

Refused at the gateway: the request target, path and query string together, is longer than 8,192 bytes; or the headers, the target counted among them, exceed 16,384 bytes or 64 fields

- 401: #/components/responses/GatewayUnauthorized

- 402: #/components/responses/GatewayPaymentRequired

- 403: #/components/responses/GatewayForbidden

- 404: The requested object is absent, or Facebook does not show it to logged-out visitors. An empty page of an object that exists does not return `404`.

- 405: `method_not_allowed`: the endpoint answers GET alone, and any other method, HEAD included, is refused

Refused at the gateway: the path exists, but no operation on it takes the method of the request, HEAD included; `Allow` names the methods that do

- 409: #/components/responses/GatewayConflict

- 429: `rate_limited`: Facebook limited the requests or asked a logged-out visitor to sign in. Wait for the seconds in `Retry-After`, then repeat the request. Facebook publishes no numbers for these limits.

Refused at the gateway: the account calls faster than its rate limit allows

- 500: The requested information could not be returned.

- 501: The requested information is unavailable without signing in or is not supported.

- 503: The requested information is temporarily unavailable. Repeat the request later. `code` gives the cause:

- `upstream_error`: no answer came from Facebook, or Facebook answered with a server error. Wait for the seconds in `Retry-After`, then repeat the request.
- `upstream_stale`: the service is renewing its access to this information.
- `no_proxies`: the service cannot get this kind of information at the moment.
- `overloaded`: the service is handling too many requests at the same time. Repeat the request after a short pause, or send fewer requests at the same time.

Refused at the gateway: the check could not complete, the account is suspended, or the platform did not answer; each may pass later, and `Retry-After` comes only when the platform did not answer

## Credits

Check the live price in the documentation before sending. Platform 2xx and 4xx responses can use credits, including empty data. Gateway refusals and 5xx responses do not use credits. Each pagination request is a separate call.

https://monsterapi.co/docs/pricing

## Request template

Replace path placeholders and add the required query parameters from the Inputs section before sending.

```shell

curl --get 'https://api.monsterapi.co/facebook/api/watch/section' \
  -H 'Authorization: Bearer <YOUR_API_KEY>'

```

---

# Facebook: Video topic sections

`GET /facebook/api/watch/topic`

Documentation: https://monsterapi.co/docs/api/facebook#facebook-video-topic-sections

Operation ID: `facebook_watch_topic`

Returns a video topic with its subtopics and video sections. Pass topic_id and section_id from `route.topic_id` and `route.section_id` in [/route](https://monsterapi.co/docs/api/facebook-route#facebook-path-identifiers) for the topic path, such as `/watch/topic/947722281917040/`.

## Authentication

Send your billing API key in the `Authorization: Bearer <YOUR_API_KEY>` header. Your account login is separate.

## Inputs

- `topic_id` (query, required): Numeric topic ID: `route.topic_id` in [/route](https://monsterapi.co/docs/api/facebook-route#facebook-path-identifiers) for the topic path, such as `/watch/topic/947722281917040/`, or `topics[].id` in [/watch/topics](https://monsterapi.co/docs/api/facebook-watch#facebook-video-topics). An ID that names no topic returns `500` with code `upstream_shape`. That code does not show whether the topic exists.

- `section_id` (query, required): Section ID of the same topic: `route.section_id` in [/route](https://monsterapi.co/docs/api/facebook-route#facebook-path-identifiers) for the topic path. The topic comes from `topic_id` and the videos from this section, so pass both from one answer.

## Responses

- 200: Requested information in data and its named fields; unavailable optional values are null.

- 400: A request parameter is invalid.

Refused at the gateway: the request target, path and query string together, is longer than 8,192 bytes; or the headers, the target counted among them, exceed 16,384 bytes or 64 fields

- 401: #/components/responses/GatewayUnauthorized

- 402: #/components/responses/GatewayPaymentRequired

- 403: #/components/responses/GatewayForbidden

- 404: The requested object is absent, or Facebook does not show it to logged-out visitors. An empty page of an object that exists does not return `404`.

- 405: `method_not_allowed`: the endpoint answers GET alone, and any other method, HEAD included, is refused

Refused at the gateway: the path exists, but no operation on it takes the method of the request, HEAD included; `Allow` names the methods that do

- 409: #/components/responses/GatewayConflict

- 429: `rate_limited`: Facebook limited the requests or asked a logged-out visitor to sign in. Wait for the seconds in `Retry-After`, then repeat the request. Facebook publishes no numbers for these limits.

Refused at the gateway: the account calls faster than its rate limit allows

- 500: The requested information could not be returned.

- 501: The requested information is unavailable without signing in or is not supported.

- 503: The requested information is temporarily unavailable. Repeat the request later. `code` gives the cause:

- `upstream_error`: no answer came from Facebook, or Facebook answered with a server error. Wait for the seconds in `Retry-After`, then repeat the request.
- `upstream_stale`: the service is renewing its access to this information.
- `no_proxies`: the service cannot get this kind of information at the moment.
- `overloaded`: the service is handling too many requests at the same time. Repeat the request after a short pause, or send fewer requests at the same time.

Refused at the gateway: the check could not complete, the account is suspended, or the platform did not answer; each may pass later, and `Retry-After` comes only when the platform did not answer

## Credits

Check the live price in the documentation before sending. Platform 2xx and 4xx responses can use credits, including empty data. Gateway refusals and 5xx responses do not use credits. Each pagination request is a separate call.

https://monsterapi.co/docs/pricing

## Request template

Replace path placeholders and add the required query parameters from the Inputs section before sending.

```shell

curl --get 'https://api.monsterapi.co/facebook/api/watch/topic' \
  -H 'Authorization: Bearer <YOUR_API_KEY>'

```

---

# Facebook: Video topics

`GET /facebook/api/watch/topics`

Documentation: https://monsterapi.co/docs/api/facebook#facebook-video-topics

Operation ID: `facebook_watch_topics`

Returns the video topics with their IDs, names and icon names, and the names of the trending hashtags. No parameters are required.

## Authentication

Send your billing API key in the `Authorization: Bearer <YOUR_API_KEY>` header. Your account login is separate.

## Inputs

## Responses

- 200: Requested information in data and its named fields; unavailable optional values are null.

- 400: #/components/responses/GatewayBadRequest

- 401: #/components/responses/GatewayUnauthorized

- 402: #/components/responses/GatewayPaymentRequired

- 403: #/components/responses/GatewayForbidden

- 404: The requested object is absent, or Facebook does not show it to logged-out visitors. An empty page of an object that exists does not return `404`.

- 405: `method_not_allowed`: the endpoint answers GET alone, and any other method, HEAD included, is refused

Refused at the gateway: the path exists, but no operation on it takes the method of the request, HEAD included; `Allow` names the methods that do

- 409: #/components/responses/GatewayConflict

- 429: `rate_limited`: Facebook limited the requests or asked a logged-out visitor to sign in. Wait for the seconds in `Retry-After`, then repeat the request. Facebook publishes no numbers for these limits.

Refused at the gateway: the account calls faster than its rate limit allows

- 500: The requested information could not be returned.

- 501: The requested information is unavailable without signing in or is not supported.

- 503: The requested information is temporarily unavailable. Repeat the request later. `code` gives the cause:

- `upstream_error`: no answer came from Facebook, or Facebook answered with a server error. Wait for the seconds in `Retry-After`, then repeat the request.
- `upstream_stale`: the service is renewing its access to this information.
- `no_proxies`: the service cannot get this kind of information at the moment.
- `overloaded`: the service is handling too many requests at the same time. Repeat the request after a short pause, or send fewer requests at the same time.

Refused at the gateway: the check could not complete, the account is suspended, or the platform did not answer; each may pass later, and `Retry-After` comes only when the platform did not answer

## Credits

Check the live price in the documentation before sending. Platform 2xx and 4xx responses can use credits, including empty data. Gateway refusals and 5xx responses do not use credits. Each pagination request is a separate call.

https://monsterapi.co/docs/pricing

## Request template

Replace path placeholders and add the required query parameters from the Inputs section before sending.

```shell

curl --get 'https://api.monsterapi.co/facebook/api/watch/topics' \
  -H 'Authorization: Bearer <YOUR_API_KEY>'

```
