openapi: 3.0.3 info: title: Breeze ChMS Account Events API description: The Breeze ChMS API is a documented REST API for Breeze church management software. It is scoped to an individual church subdomain (https://{subdomain}.breezechms.com/api) and covers people, tags, events, check-in / attendance, giving (contributions), funds, pledge campaigns, custom forms, volunteers, and account administration. Every operation is an HTTP GET request whose inputs are supplied as query-string parameters; request bodies for create/update operations are passed as JSON-encoded strings in parameters such as fields_json and funds_json. Authentication is an account API key sent in the Api-Key HTTP header. The API is rate limited to roughly 20 requests per minute; wait about 3.5 seconds between calls. The API key is obtained by the Account Owner under Manage Account > API Key. version: '1.0' contact: name: Breeze ChMS url: https://www.breezechms.com servers: - url: https://{subdomain}.breezechms.com/api description: Church-specific Breeze subdomain variables: subdomain: default: yourchurch description: Your church's Breeze subdomain. security: - apiKeyAuth: [] tags: - name: Events description: Events, calendars, and locations. paths: /events: get: operationId: listEvents tags: - Events summary: List events parameters: - name: start in: query schema: type: string description: Start date (YYYY-MM-DD). - name: end in: query schema: type: string description: End date (YYYY-MM-DD). - name: category_id in: query schema: type: string - name: eligible in: query schema: type: integer enum: - 0 - 1 - name: details in: query schema: type: integer enum: - 0 - 1 - name: limit in: query schema: type: integer responses: '200': description: A list of events. '401': $ref: '#/components/responses/Unauthorized' /events/list_event: get: operationId: getEvent tags: - Events summary: Retrieve an event instance parameters: - name: instance_id in: query required: true schema: type: string - name: schedule in: query schema: type: integer enum: - 0 - 1 - name: schedule_direction in: query schema: type: string enum: - before - after - name: schedule_limit in: query schema: type: integer - name: eligible in: query schema: type: integer enum: - 0 - 1 - name: details in: query schema: type: integer enum: - 0 - 1 responses: '200': description: The requested event instance. /events/calendars/list: get: operationId: listCalendars tags: - Events summary: List calendars responses: '200': description: A list of calendars. /events/locations: get: operationId: listLocations tags: - Events summary: List event locations responses: '200': description: A list of locations. /events/add: get: operationId: addEvent tags: - Events summary: Add an event parameters: - name: name in: query schema: type: string - name: starts_on in: query schema: type: string - name: ends_on in: query schema: type: string - name: all_day in: query schema: type: integer enum: - 0 - 1 - name: description in: query schema: type: string - name: category_id in: query schema: type: string - name: event_id in: query schema: type: string responses: '200': description: The created event. /events/delete: get: operationId: deleteEvent tags: - Events summary: Delete an event instance parameters: - name: instance_id in: query required: true schema: type: string responses: '200': description: Result. components: responses: Unauthorized: description: Missing or invalid Api-Key header. securitySchemes: apiKeyAuth: type: apiKey in: header name: Api-Key description: Account API key sent in the Api-Key header. The Account Owner generates it under Manage Account > API Key in the Breeze web app.