Caterer API
The CaterCow Caterer APIs provide comprehensive endpoints supporting all functionalities available in the caterer dashboard. These endpoints allow caterers to manage availability, business hours, orders, packages, payouts, delivery areas, and more.
To achieve even baseline access to this API, the user must have access to at least one brand.
A key aspect of the API is the CC-As-Brand header, which specifies the brand context for the current request. This is especially important for users with access to multiple brands, ensuring that actions and data retrieval are performed within the correct brand context.
V1
The Caterer V1 API documentation can be found here.
Availability
- Fetch unavailable dates: Retrieve all dates a caterer is unavailable, either for all kitchens within a brand or for a specific kitchen.
- Update unavailable dates: Set the upcoming dates a specific kitchen will be unavailable.
Batched Deliveries [deprecated]
- Manage batched deliveries: Retrieve a list of all batched deliveries or a single batched delivery. Caterers can also accept, decline, or mark a batched delivery as complete.
Business Hours
- Fetch business hours: Get the weekly business hours for all kitchens in a brand or for a single kitchen.
- Update business hours: Modify the weekly business hours for a specific kitchen.
Coupons
- Manage coupons: Allows for the creation, retrieval, updating, and deactivation of coupons for a caterer.
Delivery Areas
- Manage delivery areas: Fetch the list of delivery areas for a caterer and retrieve or update the pricing for a specific delivery area.
Orders
- Manage orders: This extensive section allows for:
- Retrieving all orders or a single order.
- Accepting or declining new orders.
- Accepting changes to an existing order.
- Confirming an accepted order.
Order Polls
- Manage order polls:
- Retrieve all active polls for the current user, with filtering options.
- Get the poll associated with a specific order.
- Decline a poll in advance of its submission.
Packages
- Manage packages:
- Fetch all packages offered by a caterer, with various filtering options.
- Retrieve a single package by its ID.
- Request changes to a package.
- Approve a pending package.
Payouts
- Fetch payouts: Retrieve a list of all payouts for a caterer or all payouts associated with a specific order, with multiple filtering options available.
Uploaded Files [deprecated]
- Manage uploaded files: Create and retrieve uploaded files, such as menus or photos, with filtering options.
V2
The Caterer V2 API documentation can be found here.
Bank Accounts:
- Create and retrieve bank account information for a legal entity.
Brands:
- Fetch a list of all brands associated with a restaurant group.
- Create, retrieve, and update specific brand details.
Contacts:
- Manage contact information for a restaurant group, including fetching, creating, retrieving, updating, and deleting contacts.
Delivery Prices:
- Fetch and update pricing for specific delivery zones.
- Populate delivery areas with preset pricing.
Kitchens:
- Manage kitchen information, including fetching a list of kitchens, creating a new kitchen for a brand, and retrieving, updating, and deleting a specific kitchen. A deleted kitchen will be soft-deleted if it is associated with existing orders.
Legal Entities:
- Handle the legal entities associated with a restaurant group, allowing for fetching, creating, retrieving, updating, and deleting these entities.
Menu Review Items:
- Retrieve and update items within a specific menu review.
Menu Reviews:
- Fetch a list of all menu reviews or a specific menu review.
- Mark a menu review as complete.
Menu Review Questions:
- Update the answer to a question within a menu review.