Zuora · Capability

API Reference — Contacts

API Reference — Contacts. 5 operations. Lead operation: Create a contact. Self-contained Naftiko capability covering one Zuora business surface.

Run with Naftiko ZuoraContacts

What You Can Do

POST
Postcreatecontact — Create a contact
/v1/v1/contacts
GET
Getcontact — Retrieve a contact
/v1/v1/contacts/{contactid}
PUT
Putcontact — Update a contact
/v1/v1/contacts/{contactid}
DELETE
Deletecontact — Delete a contact
/v1/v1/contacts/{contactid}
PUT
Putscrubcontact — Scrub a contact
/v1/v1/contacts/{contactid}/scrub

MCP Tools

create-contact

Create a contact

retrieve-contact

Retrieve a contact

read-only idempotent
update-contact

Update a contact

idempotent
delete-contact

Delete a contact

idempotent
scrub-contact

Scrub a contact

idempotent

Capability Spec

v1-contacts.yaml Raw ↑
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: $.