Check a postcode
POST
/storefront/sites/{host}/postcode
const url = 'https://example.com/storefront/sites/northgate.shop.getbottle.app/postcode';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"postcode":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/storefront/sites/northgate.shop.getbottle.app/postcode \ --header 'Content-Type: application/json' \ --data '{ "postcode": "example" }'Deliberately unauthenticated: the shop’s “do you deliver to me?”. Whether the business delivers there, the area’s name, the delivery charge with VAT in, free delivery and minimum order figures, the first and last day it could come (UK dates, after the shop’s cut-off counting from tomorrow, past the days the business is shut), and whether collection is offered. Never cached.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”host
required
string
Example
northgate.shop.getbottle.appQuery Parameters
Section titled “Query Parameters”preview
string
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
postcode
required
string
Examplegenerated
{ "postcode": "example"}Responses
Section titled “Responses”The answer
Media typeapplication/json
object
deliverable
required
boolean
area
required
string | null
choices
required
Array<object>
object
deliveryOptionId
required
UUID v7
string format: uuid
name
required
string
chargePence
required
integer
chargePenceExVat
integer
earliest
required
string format: date
latest
required
string format: date
orderBy
required
string | null format: date-time
daysOfWeek
Array<integer> | null
freeOverPence
required
integer | null
minimumOrderPence
required
integer | null
collection
required
boolean
Example
{ "choices": [ { "deliveryOptionId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "name": "Next day" } ]}Not a shop, or not open. No body.
A shop not selling now (shop_closed); its preview works with ?preview=
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Validation failed
Media typeapplication/json
object
error
required
string
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{ "error": "validation", "issues": [ { "path": "email", "message": "Invalid email" } ]}Too many requests from one address
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}