---
title: "Get BBB newsroom stories"
method: GET
path: "/bbb/news"
tags: ["BBB"]
---

# Get BBB newsroom stories

`GET /bbb/news`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/bbb/news`
- Auth: API key in header `x-api-key`

Returns one page of BBB newsroom cards from a canonical BBB newsroom URL. Three scopes are accepted, each with an optional topic: the US or Canada newsroom (/us/news), a state, province or city newsroom (/us/ca/news, /us/ca/san-francisco/news), and one local BBB chapter's own newsroom (/local-bbb/<chapter>/news, the news_url returned by bbb-local-bbbs and bbb-local-bbb). The list is whatever BBB shows on that page: a city or chapter whose local BBB publishes its own stories returns those, and other cities, other chapters and the state pages checked so far return the same list as the country newsroom, so compare total and the first items with the country newsroom before treating a list as local. A chapter URL also returns local_bbb_id and local_bbb_name. Items preserve BBB's type and include Article stories, events, and Near Me related-service cards when present. Near Me URLs are restricted to BBB's /near-me/<slug> paths. Every page carries total_pages and has_more: request page + 1 while has_more is true and stop when it is false; a page past the end returns 404. Event dates and links are preserved when present.

## Query parameters

- `url` string, required

## Headers

- `x-api-key` string, required

## Response `200`

OK

- object: The Response struct is used for wrapping the API response with a code, message, and data.
  - `code` integer: Code is the HTTP status code or a custom code used to indicate the result of the request @example 200
  - `data` object: Data is the response data (can be any object or null) @example {"id": 1, "name": "John Doe"}
    - `city` string: City slug; present for a city URL.
    - `country` 'us' | 'ca': Country of the newsroom: us or ca.
    - `has_more` boolean: True while a later page exists; request page + 1 next and stop when it is false.
    - `items` BbbnewsNewsItem[]: BBB's newsroom cards on this page, in source order. Near Me cards are preserved with type "Near Me".
      - `event_start_date` string
      - `event_url` string
      - `id` string: BBB's id of the story, event, or related local-service card.
      - `image` BbbnewsImage
        - `alt_text` string
        - `caption` string
        - `credit` string
        - `url` string
      - `modified_date` string
      - `summary` string
      - `title` string
      - `type` string: BBB's content type: Article for a story, an event type for an event, or Near Me for a related local-service card.
      - `url` string: Canonical BBB article URL, event URL, or related-service URL, according to Type.
    - `local_bbb_id` string: Id of the local BBB chapter; present for a chapter URL.
    - `local_bbb_name` string: Name of the local BBB chapter; present for a chapter URL.
    - `page` integer: Page number that was returned, 1-based.
    - `page_size` integer: BBB's page size. A page can hold fewer items than this with more pages after it.
    - `source_url` string: The newsroom URL that was read, page query included.
    - `state` string: Two-letter state or province code; present for a state or city URL.
    - `topic` string: Topic name; present for a topic URL.
    - `total` integer: BBB's count of stories in the list. It can be slightly higher than the number of stories the pages hold.
    - `total_pages` integer: Number of pages BBB serves for the list, from its own pager; at least 1.
  - `msg` unknown

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/0497899e2016?raw)
