openapi: 3.1.0 info: title: HubSpot Analytics Events Access Tokens Tickets API description: "The HubSpot Analytics Events API allows you to retrieve event completion data \nfrom your HubSpot account. Use this API to query event instances associated with \nCRM objects, filter by event types, and analyze user behavior and engagement patterns.\n\n## Key Features\n- Retrieve event instances for CRM objects\n- Filter events by type, date range, and object\n- Paginate through large result sets\n- Query available event types\n" version: 3.0.0 contact: name: HubSpot Developer Support url: https://developers.hubspot.com license: name: MIT url: https://opensource.org/licenses/MIT servers: - url: https://api.hubapi.com description: HubSpot Production API Server tags: - name: Tickets description: Operations for managing ticket records paths: /crm/v3/objects/tickets: get: operationId: listTickets summary: Hubspot List Tickets description: Returns a page of ticket records. Use the limit and after parameters to paginate through tickets. You can also specify which properties to return using the properties parameter. tags: - Tickets parameters: - name: limit in: query description: The maximum number of results to return per page. schema: type: integer default: 10 maximum: 100 example: 10 - name: after in: query description: The cursor for pagination to get the next page of results. schema: type: string example: example-value - name: properties in: query description: A comma-separated list of property names to return. schema: type: string example: example-value - name: archived in: query description: Whether to return archived tickets. schema: type: boolean default: false example: false responses: '200': description: Successful response with a list of tickets. content: application/json: schema: $ref: '#/components/schemas/CollectionResponseTicket' examples: Listtickets200Example: summary: Default listTickets 200 response x-microcks-default: true value: results: - id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value paging: next: {} '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createTicket summary: Hubspot Create a Ticket description: Creates a new ticket record with the provided properties. The request body should include a properties object containing field values such as subject, content, hs_ticket_priority, and hs_pipeline_stage. tags: - Tickets requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SimplePublicObjectInput' examples: CreateticketRequestExample: summary: Default createTicket request x-microcks-default: true value: properties: key: value responses: '201': description: Ticket created successfully. content: application/json: schema: $ref: '#/components/schemas/Ticket' examples: Createticket201Example: summary: Default createTicket 201 response x-microcks-default: true value: id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /crm/v3/objects/tickets/{ticketId}: get: operationId: getTicket summary: Hubspot Get a Ticket description: Returns a single ticket record by its ID. You can specify which properties to return using the properties parameter. tags: - Tickets parameters: - name: ticketId in: path required: true description: The ID of the ticket to retrieve. schema: type: string example: '500123' - name: properties in: query description: A comma-separated list of property names to return. schema: type: string example: example-value - name: archived in: query description: Whether to return archived tickets. schema: type: boolean default: false example: false responses: '200': description: Successful response with the ticket record. content: application/json: schema: $ref: '#/components/schemas/Ticket' examples: Getticket200Example: summary: Default getTicket 200 response x-microcks-default: true value: id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: operationId: updateTicket summary: Hubspot Update a Ticket description: Performs a partial update of a ticket record. Only the properties included in the request body will be updated; other properties will remain unchanged. tags: - Tickets parameters: - name: ticketId in: path required: true description: The ID of the ticket to update. schema: type: string example: '500123' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SimplePublicObjectInput' examples: UpdateticketRequestExample: summary: Default updateTicket request x-microcks-default: true value: properties: key: value responses: '200': description: Ticket updated successfully. content: application/json: schema: $ref: '#/components/schemas/Ticket' examples: Updateticket200Example: summary: Default updateTicket 200 response x-microcks-default: true value: id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteTicket summary: Hubspot Archive a Ticket description: Archives (soft deletes) a ticket record by its ID. Archived tickets can be restored using the HubSpot UI or API. tags: - Tickets parameters: - name: ticketId in: path required: true description: The ID of the ticket to archive. schema: type: string example: '500123' responses: '204': description: Ticket archived successfully. '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /crm/v3/objects/tickets/search: post: operationId: searchTickets summary: Hubspot Search Tickets description: Searches for ticket records using filter groups, sorts, and other query parameters. Supports complex filtering with multiple filter groups and operators for precise record retrieval. tags: - Tickets requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SearchRequest' examples: SearchticketsRequestExample: summary: Default searchTickets request x-microcks-default: true value: filterGroups: - filters: - {} sorts: - propertyName: Example Record direction: ASCENDING query: example-value properties: - example-value limit: 100 after: example-value responses: '200': description: Search results returned successfully. content: application/json: schema: $ref: '#/components/schemas/CollectionResponseTicket' examples: Searchtickets200Example: summary: Default searchTickets 200 response x-microcks-default: true value: results: - id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value paging: next: {} '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: responses: NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: The request is invalid or missing required parameters. content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Authentication credentials are missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: FilterGroup: type: object description: A group of filters combined with AND logic. properties: filters: type: array items: $ref: '#/components/schemas/Filter' example: - propertyName: Example Record operator: EQ value: example-value Error: type: object description: An error response. properties: status: type: string example: active message: type: string example: This is an example description. correlationId: type: string example: '500123' category: type: string example: standard SimplePublicObjectInput: type: object description: Input for creating or updating a CRM object. properties: properties: type: object additionalProperties: type: string example: key: value Association: type: object description: An association between two CRM objects. properties: id: type: string example: '500123' type: type: string example: standard SearchRequest: type: object description: A search request for CRM objects. properties: filterGroups: type: array items: $ref: '#/components/schemas/FilterGroup' example: - filters: - {} sorts: type: array items: type: object properties: propertyName: type: string direction: type: string enum: - ASCENDING - DESCENDING example: - propertyName: Example Record direction: ASCENDING query: type: string example: example-value properties: type: array items: type: string example: - example-value limit: type: integer maximum: 200 example: 100 after: type: string example: example-value Paging: type: object description: Pagination information. properties: next: type: object properties: after: type: string example: after: example-value Filter: type: object description: A single filter condition. properties: propertyName: type: string example: Example Record operator: type: string enum: - EQ - NEQ - LT - LTE - GT - GTE - BETWEEN - IN - NOT_IN - HAS_PROPERTY - NOT_HAS_PROPERTY - CONTAINS_TOKEN - NOT_CONTAINS_TOKEN example: EQ value: type: string example: example-value CollectionResponseTicket: type: object description: A paginated list of ticket records. properties: results: type: array items: $ref: '#/components/schemas/Ticket' example: - id: '500123' properties: key: value createdAt: '2025-03-15T14:30:00Z' updatedAt: '2025-03-15T14:30:00Z' archived: true associations: key: value paging: $ref: '#/components/schemas/Paging' Ticket: type: object description: A HubSpot ticket record. properties: id: type: string description: The unique identifier for the ticket. example: '500123' properties: type: object description: The ticket's properties as key-value pairs. additionalProperties: type: string example: key: value createdAt: type: string format: date-time description: The date and time the ticket was created. example: '2025-03-15T14:30:00Z' updatedAt: type: string format: date-time description: The date and time the ticket was last updated. example: '2025-03-15T14:30:00Z' archived: type: boolean description: Whether the ticket has been archived. example: true associations: type: object description: The ticket's associations with other CRM objects. additionalProperties: $ref: '#/components/schemas/CollectionResponseAssociation' example: key: value CollectionResponseAssociation: type: object description: A list of associations. properties: results: type: array items: $ref: '#/components/schemas/Association' example: - id: '500123' type: standard paging: $ref: '#/components/schemas/Paging' securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://app.hubspot.com/oauth/authorize tokenUrl: https://api.hubapi.com/oauth/v1/token scopes: analytics.read: Read analytics data