openapi: 3.0.3 info: title: HoneyBook API (Modeled) Clients Scheduler API description: HoneyBook does not publish a self-serve public developer API or a public API reference. This document models the logical resource surface implied by HoneyBook's product (clients/leads, projects, contracts, proposals, invoices, payments, scheduler sessions) and by the trigger/action events exposed through its Zapier integration (New Client, New Inquiry, Project Booked, Payment Received, Project Stage Changed). An internal API host, https://api.honeybook.com, is live behind Cloudflare and clearly backs HoneyBook's own web/mobile apps and its native integrations, but HoneyBook has never published endpoint documentation, a client registration/OAuth flow, or a field dictionary for outside developers. Third-party integration guides (e.g. Rollout) reference an OAuth 2.0 flow against api.honeybook.com and a `/v1/` base path, but are inconsistent with each other on the exact token endpoint and grant type, and are not independently verifiable - treat every path, parameter, and schema below as an honest, sourced-but-unverified model, not a confirmed reference. Confirm directly with HoneyBook before attempting integration. version: 1.0-modeled contact: name: HoneyBook url: https://www.honeybook.com servers: - url: https://api.honeybook.com/v1 description: Modeled base path (unverified; not publicly documented by HoneyBook) security: - oauth2: [] tags: - name: Scheduler description: Self-service session-type booking (Essentials/Premium plans). paths: /scheduler/session-types: get: operationId: listSessionTypes tags: - Scheduler summary: List bookable session types description: Scheduler is available on Essentials and Premium plans (unlimited session types); Starter is capped at one live session type. responses: '200': description: A list of session types. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/SessionType' '401': $ref: '#/components/responses/Unauthorized' /scheduler/bookings: get: operationId: listBookings tags: - Scheduler summary: List scheduled bookings responses: '200': description: A list of bookings. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Booking' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createBooking tags: - Scheduler summary: Create a booking against a session type's availability requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BookingInput' responses: '201': description: The created booking. content: application/json: schema: $ref: '#/components/schemas/Booking' '401': $ref: '#/components/responses/Unauthorized' '422': $ref: '#/components/responses/ValidationError' components: responses: Unauthorized: description: Missing or invalid access token. content: application/json: schema: $ref: '#/components/schemas/Error' ValidationError: description: The request payload failed validation. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: SessionType: type: object properties: id: type: string name: type: string duration_minutes: type: integer Booking: allOf: - $ref: '#/components/schemas/BookingInput' - type: object properties: id: type: string status: type: string enum: - scheduled - cancelled - completed BookingInput: type: object required: - session_type_id - start_time properties: session_type_id: type: string client_id: type: string start_time: type: string format: date-time Error: type: object properties: error: type: object properties: code: type: string message: type: string securitySchemes: oauth2: type: oauth2 description: Third-party integration guides reference OAuth 2.0 against api.honeybook.com, but are inconsistent on the exact token endpoint and grant type and are not independently verifiable. Modeled here as an authorization-code flow with refresh tokens, the most common pattern for a user-data platform of this kind; treat as unverified. flows: authorizationCode: authorizationUrl: https://api.honeybook.com/oauth/authorize tokenUrl: https://api.honeybook.com/oauth/token scopes: clients.read: Read clients and inquiries. clients.write: Create and update clients and inquiries. projects.read: Read projects and pipeline stage. projects.write: Create and update projects. contracts.read: Read contracts. contracts.write: Create contracts. proposals.read: Read proposals. proposals.write: Create proposals. invoices.read: Read invoices. invoices.write: Create invoices. payments.read: Read payments. scheduler.read: Read session types and bookings. scheduler.write: Create bookings. webhooks.write: Manage webhook subscriptions. externalDocs: description: HoneyBook integrations and partnerships help center url: https://help.honeybook.com/en/collections/68941-integrations-and-partnerships