PetExec Calendar API
Company-wide and per-owner reservation calendars by date range.
Company-wide and per-owner reservation calendars by date range.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/petexec-calendar-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: PetExec Calendar API
description: The PetExec API is a REST API for existing PetExec customers and their developers to extend the PetExec pet-care business management platform (daycare, boarding, grooming, training, and scheduled services).
version: '1.0'
contact:
name: PetExec
url: https://www.petexec.net/features/api-for-developers
servers:
- url: https://secure.petexec.net/api
description: PetExec production API (used by nearly all official PHP and most JavaScript examples)
- url: https://beta.petexec.net/api
description: PetExec beta/staging API (referenced by some official JavaScript examples for the same paths; not separately documented)
security:
- bearerAuth: []
tags:
- name: Calendar
description: Company-wide and per-owner reservation calendars by date range.
paths:
/calendar/boarding/start/{start_date}/end/{end_date}:
get:
operationId: getCompanyBoardingsScheduled
tags:
- Calendar
summary: Get company boardings scheduled in a date range
parameters:
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: Scheduled boardings.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/daycare/start/{start_date}/end/{end_date}:
get:
operationId: getCompanyDaycaresScheduled
tags:
- Calendar
summary: Get company daycares scheduled in a date range
parameters:
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: Scheduled daycares.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/grooming/start/{start_date}/end/{end_date}:
get:
operationId: getCompanyGroomingsScheduled
tags:
- Calendar
summary: Get company groomings scheduled in a date range
parameters:
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: Scheduled groomings.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/scheduled-service/start/{start_date}/end/{end_date}:
get:
operationId: getCompanyScheduledServicesScheduled
tags:
- Calendar
summary: Get company scheduled services scheduled in a date range
parameters:
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: Scheduled services.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/owner/{owner_id}/boarding/start/{start_date}/end/{end_date}:
get:
operationId: getOwnerBoardingsScheduled
tags:
- Calendar
summary: Get an owner's boardings scheduled in a date range
parameters:
- $ref: '#/components/parameters/OwnerId'
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: The owner's scheduled boardings.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/owner/{owner_id}/daycare/start/{start_date}/end/{end_date}:
get:
operationId: getOwnerDaycaresScheduled
tags:
- Calendar
summary: Get an owner's daycares scheduled in a date range
parameters:
- $ref: '#/components/parameters/OwnerId'
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: The owner's scheduled daycares.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/owner/{owner_id}/grooming/start/{start_date}/end/{end_date}:
get:
operationId: getOwnerGroomingsScheduled
tags:
- Calendar
summary: Get an owner's groomings scheduled in a date range
parameters:
- $ref: '#/components/parameters/OwnerId'
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: The owner's scheduled groomings.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
/calendar/owner/{owner_id}/scheduled-service/start/{start_date}/end/{end_date}:
get:
operationId: getOwnerScheduledServicesScheduled
tags:
- Calendar
summary: Get an owner's scheduled services scheduled in a date range
parameters:
- $ref: '#/components/parameters/OwnerId'
- $ref: '#/components/parameters/StartDate'
- $ref: '#/components/parameters/EndDate'
responses:
'200':
description: The owner's scheduled services.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Reservation'
'401':
$ref: '#/components/responses/Unauthorized'
components:
parameters:
OwnerId:
name: owner_id
in: path
required: true
description: The PetExec owner (pet parent) ID.
schema:
type: string
StartDate:
name: start_date
in: path
required: true
description: yyyy-mm-dd
schema:
type: string
format: date
EndDate:
name: end_date
in: path
required: true
description: yyyy-mm-dd
schema:
type: string
format: date
schemas:
Reservation:
type: object
additionalProperties: true
Error:
type: object
additionalProperties: true
responses:
Unauthorized:
description: Missing, invalid, or expired Bearer token, or insufficient scope.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'OAuth2 password-grant access token obtained from POST /token. Passed as `Authorization: Bearer YOUR_ACCESS_TOKEN`.'