openapi: 3.2.0 info: title: Keap Automation Category API description: Keap Public API Documentation termsOfService: https://www.thryv.com/terms-of-use contact: name: Keap url: https://developer.keap.com/get-support email: api.keap@thryv.com license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 version: v2 servers: - url: https://api.infusionsoft.com/crm security: - oauth2: [] tags: - name: AutomationCategory paths: /rest/v2/automationCategory: get: tags: - AutomationCategory summary: List automation categories description: Retrieves a list of automation categories operationId: listCategories responses: '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '501': description: Method Not Implemented content: application/json: schema: $ref: '#/components/schemas/Error' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/Error' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ListAutomationCategoryResponse' post: tags: - AutomationCategory summary: Create automation category description: Creates a single automation category operationId: createCategory requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateAutomationCategoryRequest' required: true responses: '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '501': description: Method Not Implemented content: application/json: schema: $ref: '#/components/schemas/Error' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/Error' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/AutomationCategory' delete: tags: - AutomationCategory summary: Delete automation category description: Deletes one or more automation categories based on the request parameters operationId: deleteCategories parameters: - name: ids in: query required: true schema: type: array items: type: integer format: int64 responses: '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '501': description: Method Not Implemented content: application/json: schema: $ref: '#/components/schemas/Error' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/Error' '204': description: No Content /rest/v2/automationCategory/{id}: patch: tags: - AutomationCategory summary: Update automation category description: Updates part of a single automation category operationId: patchCategory parameters: - name: id in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchAutomationCategoryRequest' required: true responses: '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' '501': description: Method Not Implemented content: application/json: schema: $ref: '#/components/schemas/Error' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/Error' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AutomationCategory' components: schemas: ListAutomationCategoryResponse: type: object description: Response containing a list of automation categories properties: automation_categories: type: array description: List of automation categories items: $ref: '#/components/schemas/AutomationCategory' next_page_token: type: string ErrorDetails: type: object properties: domain: type: string resource: type: string PatchAutomationCategoryRequest: type: object properties: name: type: string description: New name for the category example: Marketing Campaigns maxLength: 100 minLength: 1 CreateAutomationCategoryRequest: type: object description: Request to create an automation category properties: name: type: string description: The name of the category to create example: Marketing Campaigns required: - name AutomationCategory: type: object description: An automation category properties: id: type: string description: The unique identifier of the category example: 1 name: type: string description: The name of the category example: Marketing Campaigns automation_count: type: integer format: int64 description: Number of automations in this category example: 15 Error: type: object properties: code: type: integer format: int32 message: type: string status: type: string details: type: array items: $ref: '#/components/schemas/ErrorDetails' securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://accounts.infusionsoft.com/app/oauth/authorize tokenUrl: https://api.infusionsoft.com/token scopes: {}