Docs

List catalogue items

Preview· P9
GET
/catalogue-items

Returns the items in your page's What We Offer on Agoo Reviews, in your page's own order: live and hidden ones by default, or by status. Filter by branch.

Scope: reviews:read · Plan: Growth, Pro and Enterprise in live mode (Reviews Business or Reviews Enterprise for an Agoo Reviews key); every plan in test mode.

Authorization

headerAuthorizationBearer <token>

Send Authorization: Bearer <token> on every request. The token is one of:

PrefixWhat it isWhere it may be used
agoo_sk_live_Secret key, live modeYour servers only
agoo_sk_test_Secret key, test modeYour servers only
agoo_pk_live_Publishable key, live modeBrowsers and apps: create pre-registrations and bookings, read public booking types (with their intake questions) and their free slots, read the visit types open for pre-registration with their public forms. Never lists people.
agoo_pk_test_Publishable key, test modeAs above, in test mode
agoo_rk_live_Agoo Reviews key, live mode: a business on Agoo Reviews on its own, on Reviews BusinessYour servers only: the Reviews operations, for that business and the branches the key names
agoo_rk_test_Agoo Reviews key, test modeAs above, on any level: it reads the business's reviews and checks every write without saving it

Admins create keys in Console → Developers → API keys and choose each key's scopes; a business on Agoo Reviews on its own creates its keys in its business area on agoo.reviews, under Developers. A key is shown once. Never put a secret key in a URL, a browser or a mobile app.

Scope: reviews:read

Query Parameters

limit?integer

How many items to return, from 1 to 100.

Range1 <= value <= 100
Default25
cursor?string

The next_cursor from the previous page. Leave it out for the first page.

Lengthlength <= 512
place_id?string

Only items offered at this branch.

Match^rplace_[0-7][0-9a-hjkmnp-tv-z]{25}$
Example"rplace_01m6a2b3c4d5e6f7g8h9jkmnpq"
status?string

current (the default) is live and hidden.

Value in"current""live""hidden""removed"

Response Body

A page of items.

application/json
  1. response
data*array<>
next_cursor*|

Pass this as cursor to get the next page. null on the last page.

Example"b3BhcXVlLWN1cnNvcg"
has_more*boolean
curl -X GET 'https://api.agoohq.com/v1/catalogue-items?limit=25'
{  "data": [    {      "id": "string",      "object": "catalogue_item",      "business_id": "string",      "kind": "product",      "name": "string",      "description": "string",      "group": "string",      "price": {        "kind": "fixed",        "min": 0,        "max": 0,        "unit": "string",        "currency": "GHS"      },      "buy_url": "http://example.com",      "book_url": "http://example.com",      "enquiries": true,      "listed": true,      "reviewable": true,      "status": "live",      "position": 0,      "place_ids": [        "rplace_01m6a2b3c4d5e6f7g8h9jkmnpq"      ],      "photos": 0,      "rating": {},      "url": "http://example.com",      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z",      "test": true    }  ],  "next_cursor": "b3BhcXVlLWN1cnNvcg",  "has_more": true}

List review changes GET

Returns every change to your page's reviews after a position, oldest first: `published`, `updated` (the reviewer edited it, its reply was taken down or deleted, or it now names an item), `removed` (a moderator removed it, or the reviewer withdrew it) and `replied`. Each comes with the review as it is now; one that has left the page is a tombstone (its `id` and `status`, never its words), so your copy can drop it. Start a mirror by listing your reviews in full, then follow changes from `since=0` and keep the last `next_since`; ask from it after an outage. Changes are kept 13 months, longer than events: a position older than that is refused with `409 invalid_state` ("Cursor expired"), and you list your reviews in full again before following changes from `since=0`. A change may be delivered more than once; apply the review as it is now. **Scope:** `reviews:read` · **Plan:** Growth, Pro and Enterprise in live mode (Reviews Business for an Agoo Reviews key); every plan in test mode.

Create a catalogue item POST

Adds an item to your page's What We Offer, with the same checks as the business area: your level's item limit, no phone numbers, emails or links in the words (links go in `buy_url` and `book_url`), and branches of your page. Photos are added in the business area. `item.created` fires. A test key checks the item and saves nothing (`test: true`). A key limited to some branches can't change the catalogue: it belongs to the whole page. **Scope:** `reviews:write` · **Plan:** Growth, Pro and Enterprise in live mode (Reviews Business or Reviews Enterprise for an Agoo Reviews key); every plan in test mode.