naftiko: 1.0.0-alpha2 info: label: API Reference — Contacts description: 'API Reference — Contacts. 5 operations. Lead operation: Create a contact. Self-contained Naftiko capability covering one Zuora business surface.' tags: - Zuora - Contacts created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ZUORA_API_KEY: ZUORA_API_KEY capability: consumes: - type: http namespace: v1-contacts baseUri: https://rest.zuora.com description: API Reference — Contacts business capability. Self-contained, no shared references. resources: - name: v1-contacts path: /v1/contacts operations: - name: postcreatecontact method: POST description: Create a contact outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Request in: body type: string required: true - name: v1-contacts-contactId path: /v1/contacts/{contactId} operations: - name: getcontact method: GET description: Retrieve a contact outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contactId in: path type: string description: The ID of the contact that you want to retrieve. required: true - name: putcontact method: PUT description: Update a contact outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contactId in: path type: string description: The ID of the contact that you want to update. required: true - name: Request in: body type: string required: true - name: deletecontact method: DELETE description: Delete a contact outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contactId in: path type: string description: The ID of the contact that you want to delete. required: true - name: v1-contacts-contactId-scrub path: /v1/contacts/{contactId}/scrub operations: - name: putscrubcontact method: PUT description: Scrub a contact outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contactId in: path type: string description: The ID of the contact that you want to scrub sensitive data from. required: true exposes: - type: rest namespace: v1-contacts-rest port: 8080 description: REST adapter for API Reference — Contacts. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/contacts name: v1-contacts description: REST surface for v1-contacts. operations: - method: POST name: postcreatecontact description: Create a contact call: v1-contacts.postcreatecontact with: Request: rest.Request outputParameters: - type: object mapping: $. - path: /v1/v1/contacts/{contactid} name: v1-contacts-contactid description: REST surface for v1-contacts-contactId. operations: - method: GET name: getcontact description: Retrieve a contact call: v1-contacts.getcontact with: contactId: rest.contactId outputParameters: - type: object mapping: $. - method: PUT name: putcontact description: Update a contact call: v1-contacts.putcontact with: contactId: rest.contactId Request: rest.Request outputParameters: - type: object mapping: $. - method: DELETE name: deletecontact description: Delete a contact call: v1-contacts.deletecontact with: contactId: rest.contactId outputParameters: - type: object mapping: $. - path: /v1/v1/contacts/{contactid}/scrub name: v1-contacts-contactid-scrub description: REST surface for v1-contacts-contactId-scrub. operations: - method: PUT name: putscrubcontact description: Scrub a contact call: v1-contacts.putscrubcontact with: contactId: rest.contactId outputParameters: - type: object mapping: $. - type: mcp namespace: v1-contacts-mcp port: 9090 transport: http description: MCP adapter for API Reference — Contacts. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-contact description: Create a contact hints: readOnly: false destructive: false idempotent: false call: v1-contacts.postcreatecontact with: Request: tools.Request outputParameters: - type: object mapping: $. - name: retrieve-contact description: Retrieve a contact hints: readOnly: true destructive: false idempotent: true call: v1-contacts.getcontact with: contactId: tools.contactId outputParameters: - type: object mapping: $. - name: update-contact description: Update a contact hints: readOnly: false destructive: false idempotent: true call: v1-contacts.putcontact with: contactId: tools.contactId Request: tools.Request outputParameters: - type: object mapping: $. - name: delete-contact description: Delete a contact hints: readOnly: false destructive: true idempotent: true call: v1-contacts.deletecontact with: contactId: tools.contactId outputParameters: - type: object mapping: $. - name: scrub-contact description: Scrub a contact hints: readOnly: false destructive: false idempotent: true call: v1-contacts.putscrubcontact with: contactId: tools.contactId outputParameters: - type: object mapping: $.