For Developers

    Build with Buddy

    Buddy ships with a fully open API — 1,000+ documented endpoints, Swagger / OpenAPI specs, and direct engineering support to help you connect anything to anything.

    What you get access to

    Open REST API

    1,000+ endpoints covering commerce, inventory, customers, orders, promotions, and analytics — built for production integrations.

    Swagger / OpenAPI Docs

    Fully documented schemas with request and response examples. Explore every endpoint, test live, and generate clients in your language of choice.

    Engineering Support

    Direct access to Buddy's dev team. We help scope, review, and ship — whether you're integrating in, out, or alongside our platform.

    Endpoint categories

    The surface area is wide because Buddy runs the whole storefront, not one slice of it. Rather than reading a thousand entries end to end, most teams start from the group that matches the job in front of them and expand outward from there.

    Catalog and inventory

    Products, variants, categories, brands, pricing, and availability. Read the live catalog or push changes from an external system of record.

    Orders and fulfillment

    Create orders, read status transitions, and reconcile what happened online with what happened at the register.

    Customers and accounts

    Customer records, contact preferences, order history, and the identifiers you need to join Buddy data to your own warehouse.

    Promotions and pricing rules

    Discounts, bundles, deal logic, and the conditions that decide when an offer applies to a cart.

    Content and pages

    Storefront pages, collections, media, and the structured fields behind product storytelling.

    Analytics and events

    Traffic, behavior, and commerce events, pulled as aggregates or as the underlying event stream for your own BI tooling.

    Authentication and access

    Access is granted per integration rather than per person. A partner gets its own credentials, so a key can be rotated or revoked without disturbing anyone else connected to the same account, and every call is attributable to the system that made it.

    Requests are made over HTTPS with the key sent as a bearer token in the authorization header. Responses are JSON, list endpoints are paginated, and errors come back with a status code and a machine-readable body rather than an HTML page. The exact scopes and rate limits attached to a key are set during partner onboarding, based on what the integration actually needs to touch.

    Because credentials are scoped, a read-only reporting connector and a write-capable inventory sync are not the same key. That separation is deliberate: it keeps a reporting bug from ever becoming a catalog incident.

    Example request

    curl https://api.hellobuddy.app/v1/products?limit=25 \
      -H "Authorization: Bearer $BUDDY_API_KEY" \
      -H "Accept: application/json"
    
    # 200 OK
    # {
    #   "data": [
    #     {
    #       "id": "prod_8f21",
    #       "name": "Harbor Fog 3.5g",
    #       "category": "flower",
    #       "price": 4200,
    #       "in_stock": true
    #     }
    #   ],
    #   "has_more": true,
    #   "next_cursor": "cur_9x1a"
    # }

    Every endpoint follows the same shape, so once one call is working the rest of the surface is predictable. Full request and response schemas, including the fields not shown above, live in the Swagger documentation shared with partners.

    Three ways to integrate

    Connect your platform into Buddy, build new experiences on top of Buddy, or extend Buddy outside of our app. The API is open — wire it up however your stack needs it.

    Become a Partner

    Tell us what you're building

    Drop your details and a quick note about the integration. Our team will review and get back to you to scope next steps.

    If you have any questions, just let me know.