Publix

Location profiles, business contacts, menus, categories, and products, addressed by listing slug.

Overview

Publix is the read-only public data surface for MyBusiness location listings. It gives any HTTP client access to a location's profile, menus, categories, products, and media — without touching the authenticated admin API.

What you get from one request

A single POST /graphql call returns a complete listing snapshot:

  • Location — display name, brand color, address, coordinates, logo, currency, and category
  • Business — name, website, contact email, and phone number
  • Menus — ordered list of published menus, each with categories and products
  • Products — items with pricing, availability, allergens, nutrition values, and label mentions

Single endpoint

POST https://publix-api.mateality.com/graphql

Publix speaks GraphQL syntax. There is one query root field — listing(slug: $slug) — and you select whichever fields your application needs.

Utility endpoints

MethodPathPurpose
GET/healthHealth probe

Access model

Listing visibilityAuth required
publicNone — anonymous requests work
privateEmbed key via X-Publix-Embed-Key or bearer token
disabledReturns listing: null — treat as unpublished

discoveryEnabled is separate from visibility. A public listing with discoveryEnabled: false is readable by slug but should not appear in directories or search results.

indexingEnabled tells crawlers and storefronts whether the listing owner wants search engine indexing.

Minimal example

curl -X POST "https://publix-api.mateality.com/graphql" \
  -H "content-type: application/json" \
  -d '{
    "query": "query Listing($slug: String!) { listing(slug: $slug) { slug location { displayName city country } } }",
    "variables": { "slug": "green-cafe" }
  }'
{
  "data": {
    "listing": {
      "slug": "green-cafe",
      "location": {
        "displayName": "Green Cafe",
        "city": "Bucharest",
        "country": "RO"
      }
    }
  }
}

Quickstart → Fetch your first listing in five minutes.

API reference → Every field, type, and status code.