naftiko: 1.0.0-alpha2 info: label: HubSpot Engagement Tasks API — Associations description: 'HubSpot Engagement Tasks API — Associations. 3 operations. Lead operation: Hubspot List Task Associations. Self-contained Naftiko capability covering one Hubspot business surface.' tags: - Hubspot - Associations created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: HUBSPOT_API_KEY: HUBSPOT_API_KEY capability: consumes: - type: http namespace: engagement-tasks-associations baseUri: https://api.hubapi.com description: HubSpot Engagement Tasks API — Associations business capability. Self-contained, no shared references. resources: - name: crm-v3-objects-tasks-taskId-associations-toObjectType path: /crm/v3/objects/tasks/{taskId}/associations/{toObjectType} operations: - name: listtaskassociations method: GET description: Hubspot List Task Associations outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: taskId in: path type: string description: The ID of the task. required: true - name: toObjectType in: path type: string description: The type of associated object. required: true - name: crm-v3-objects-tasks-taskId-associations-toObjectType-toObjectId-associationType path: /crm/v3/objects/tasks/{taskId}/associations/{toObjectType}/{toObjectId}/{associationType} operations: - name: createtaskassociation method: PUT description: Hubspot Create a Task Association outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: taskId in: path type: string required: true - name: toObjectType in: path type: string required: true - name: toObjectId in: path type: string required: true - name: associationType in: path type: string required: true - name: deletetaskassociation method: DELETE description: Hubspot Delete a Task Association outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: taskId in: path type: string required: true - name: toObjectType in: path type: string required: true - name: toObjectId in: path type: string required: true - name: associationType in: path type: string required: true authentication: type: bearer token: '{{env.HUBSPOT_API_KEY}}' exposes: - type: rest namespace: engagement-tasks-associations-rest port: 8080 description: REST adapter for HubSpot Engagement Tasks API — Associations. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/crm/v3/objects/tasks/{taskid}/associations/{toobjecttype} name: crm-v3-objects-tasks-taskid-associations-toobjecttype description: REST surface for crm-v3-objects-tasks-taskId-associations-toObjectType. operations: - method: GET name: listtaskassociations description: Hubspot List Task Associations call: engagement-tasks-associations.listtaskassociations with: taskId: rest.taskId toObjectType: rest.toObjectType outputParameters: - type: object mapping: $. - path: /v1/crm/v3/objects/tasks/{taskid}/associations/{toobjecttype}/{toobjectid}/{associationtype} name: crm-v3-objects-tasks-taskid-associations-toobjecttype-toobjectid-associationtype description: REST surface for crm-v3-objects-tasks-taskId-associations-toObjectType-toObjectId-associationType. operations: - method: PUT name: createtaskassociation description: Hubspot Create a Task Association call: engagement-tasks-associations.createtaskassociation with: taskId: rest.taskId toObjectType: rest.toObjectType toObjectId: rest.toObjectId associationType: rest.associationType outputParameters: - type: object mapping: $. - method: DELETE name: deletetaskassociation description: Hubspot Delete a Task Association call: engagement-tasks-associations.deletetaskassociation with: taskId: rest.taskId toObjectType: rest.toObjectType toObjectId: rest.toObjectId associationType: rest.associationType outputParameters: - type: object mapping: $. - type: mcp namespace: engagement-tasks-associations-mcp port: 9090 transport: http description: MCP adapter for HubSpot Engagement Tasks API — Associations. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: hubspot-list-task-associations description: Hubspot List Task Associations hints: readOnly: true destructive: false idempotent: true call: engagement-tasks-associations.listtaskassociations with: taskId: tools.taskId toObjectType: tools.toObjectType outputParameters: - type: object mapping: $. - name: hubspot-create-task-association description: Hubspot Create a Task Association hints: readOnly: false destructive: false idempotent: true call: engagement-tasks-associations.createtaskassociation with: taskId: tools.taskId toObjectType: tools.toObjectType toObjectId: tools.toObjectId associationType: tools.associationType outputParameters: - type: object mapping: $. - name: hubspot-delete-task-association description: Hubspot Delete a Task Association hints: readOnly: false destructive: true idempotent: true call: engagement-tasks-associations.deletetaskassociation with: taskId: tools.taskId toObjectType: tools.toObjectType toObjectId: tools.toObjectId associationType: tools.associationType outputParameters: - type: object mapping: $.