naftiko: 1.0.0-alpha2 info: label: Unum HR Connect API — Leave Management description: 'Unum HR Connect API — Leave Management. 4 operations. Lead operation: List Leave Requests. Self-contained Naftiko capability covering one Unum business surface.' tags: - Unum - Leave Management created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: UNUM_API_KEY: UNUM_API_KEY capability: consumes: - type: http namespace: hr-connect-leave-management baseUri: https://api.unum.com/v1 description: Unum HR Connect API — Leave Management business capability. Self-contained, no shared references. resources: - name: leave-requests path: /leave/requests operations: - name: listleaverequests method: GET description: List Leave Requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: groupId in: query type: string description: Employer group identifier required: true - name: memberId in: query type: string description: Filter by specific member - name: status in: query type: string description: Filter by leave request status - name: page in: query type: integer - name: limit in: query type: integer - name: submitleaverequest method: POST description: Submit Leave Request outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: leave-requests-requestId path: /leave/requests/{requestId} operations: - name: getleaverequest method: GET description: Get Leave Request outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: requestId in: path type: string description: Leave request identifier required: true - name: updateleaverequest method: PUT description: Update Leave Request outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: requestId in: path type: string description: Leave request identifier required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.UNUM_API_KEY}}' exposes: - type: rest namespace: hr-connect-leave-management-rest port: 8080 description: REST adapter for Unum HR Connect API — Leave Management. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/leave/requests name: leave-requests description: REST surface for leave-requests. operations: - method: GET name: listleaverequests description: List Leave Requests call: hr-connect-leave-management.listleaverequests with: groupId: rest.groupId memberId: rest.memberId status: rest.status page: rest.page limit: rest.limit outputParameters: - type: object mapping: $. - method: POST name: submitleaverequest description: Submit Leave Request call: hr-connect-leave-management.submitleaverequest with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/leave/requests/{requestid} name: leave-requests-requestid description: REST surface for leave-requests-requestId. operations: - method: GET name: getleaverequest description: Get Leave Request call: hr-connect-leave-management.getleaverequest with: requestId: rest.requestId outputParameters: - type: object mapping: $. - method: PUT name: updateleaverequest description: Update Leave Request call: hr-connect-leave-management.updateleaverequest with: requestId: rest.requestId body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: hr-connect-leave-management-mcp port: 9090 transport: http description: MCP adapter for Unum HR Connect API — Leave Management. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-leave-requests description: List Leave Requests hints: readOnly: true destructive: false idempotent: true call: hr-connect-leave-management.listleaverequests with: groupId: tools.groupId memberId: tools.memberId status: tools.status page: tools.page limit: tools.limit outputParameters: - type: object mapping: $. - name: submit-leave-request description: Submit Leave Request hints: readOnly: false destructive: false idempotent: false call: hr-connect-leave-management.submitleaverequest with: body: tools.body outputParameters: - type: object mapping: $. - name: get-leave-request description: Get Leave Request hints: readOnly: true destructive: false idempotent: true call: hr-connect-leave-management.getleaverequest with: requestId: tools.requestId outputParameters: - type: object mapping: $. - name: update-leave-request description: Update Leave Request hints: readOnly: false destructive: false idempotent: true call: hr-connect-leave-management.updateleaverequest with: requestId: tools.requestId body: tools.body outputParameters: - type: object mapping: $.