Docs

Create a catalogue item

Preview· P9
POST
/catalogue-items

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.

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:write

Header Parameters

Idempotency-Key*string

A UUID you generate for this operation. If you retry with the same key within 24 hours, Agoo returns the original response instead of acting twice. While the first request is still running, a retry returns conflict. Reusing a key with a different request returns idempotency_key_reused. Responses with rate_limited, internal_error or unavailable aren't stored, so retry those with the same key.

Formatuuid

Request Body

application/json
  1. body

An item to create, or what changes in one.

kind?string
Value in"product""service""programme"
name?string
Length2 <= length <= 80
description?string
Lengthlength <= 1000
group?string
Lengthlength <= 40
price?

An item's price as the page shows it, in cedis.

buy_url?string

https only.

Formaturi
Lengthlength <= 500
book_url?string

https only.

Formaturi
Lengthlength <= 500
enquiries?boolean
listed?boolean
reviewable?boolean
status?string
Value in"live""hidden"
position?integer
Range0 <= value
place_ids?array<>
Itemsitems <= 1000

Response Body

The item.

application/json
  1. response

One item in your page's What We Offer on Agoo Reviews: a product, service or programme.

id*string
Match^ritem_[0-7][0-9a-hjkmnp-tv-z]{25}$
object*"catalogue_item"
Value in"catalogue_item"
business_id*string
Match^rbiz_[0-7][0-9a-hjkmnp-tv-z]{25}$
kind*string
Value in"product""service""programme"
name*string
description*string|null
group*|

Your own grouping ("Mains", "Antenatal care").

price*

An item's price as the page shows it, in cedis.

buy_url*|
Formaturi
book_url*|
Formaturi
enquiries*boolean

Readers may send an enquiry about it.

listed*boolean

Shown under What We Offer (false: a review area only).

reviewable*boolean

Reviewers may say a review is about it.

status*string
Value in"live""hidden""removed"
position*integer

Its place in your page's order.

place_ids*array<>

The branches that offer it; empty: every branch.

photos*integer

Published photos (added in the business area).

rating*|

Its rating from the reviews that name it, when there are enough.

url*|
Formaturi
created_at*string
Formatdate-time
updated_at*string
Formatdate-time
test?boolean

A test key's write: checked, not saved.

curl -X POST 'https://api.agoohq.com/v1/catalogue-items' \  -H 'Idempotency-Key: 3f6b2a1e-8c4d-4f7a-9b2e-5d1c0a7e9f64' \  -H 'Content-Type: application/json' \  -d '{  "name": "Blood pressure check",  "kind": "service",  "price": {    "kind": "fixed",    "min": 20  },  "group": "Checks"}'
{  "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}