Oracle Eloqua · Capability

Oracle Eloqua REST API — Contacts

Oracle Eloqua REST API — Contacts. 5 operations. Lead operation: Oracle Eloqua Retrieve a contact. Self-contained Naftiko capability covering one Eloqua business surface.

Run with Naftiko EloquaContacts

What You Can Do

GET
Getcontact — Oracle Eloqua Retrieve a contact
/v1/data/contact/{id}
PUT
Updatecontact — Oracle Eloqua Update a contact
/v1/data/contact/{id}
DELETE
Deletecontact — Oracle Eloqua Delete a contact
/v1/data/contact/{id}
GET
Getcontactlistmembership — Oracle Eloqua Get contact list membership
/v1/data/contact/{id}/membership
POST
Searchcontacts — Oracle Eloqua Search contacts
/v1/data/contacts

MCP Tools

oracle-eloqua-retrieve-contact

Oracle Eloqua Retrieve a contact

read-only idempotent
oracle-eloqua-update-contact

Oracle Eloqua Update a contact

idempotent
oracle-eloqua-delete-contact

Oracle Eloqua Delete a contact

idempotent
oracle-eloqua-get-contact-list

Oracle Eloqua Get contact list membership

read-only idempotent
oracle-eloqua-search-contacts

Oracle Eloqua Search contacts

read-only

Capability Spec

rest-contacts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Oracle Eloqua REST API — Contacts
  description: 'Oracle Eloqua REST API — Contacts. 5 operations. Lead operation: Oracle Eloqua Retrieve a contact. Self-contained
    Naftiko capability covering one Eloqua business surface.'
  tags:
  - Eloqua
  - Contacts
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ELOQUA_API_KEY: ELOQUA_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-contacts
    baseUri: https://secure.p01.eloqua.com/API/REST/2.0
    description: Oracle Eloqua REST API — Contacts business capability. Self-contained, no shared references.
    resources:
    - name: data-contact-id
      path: /data/contact/{id}
      operations:
      - name: getcontact
        method: GET
        description: Oracle Eloqua Retrieve a contact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: viewId
          in: query
          type: string
          description: The contact view identifier to use
      - name: updatecontact
        method: PUT
        description: Oracle Eloqua Update a contact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletecontact
        method: DELETE
        description: Oracle Eloqua Delete a contact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: data-contact-id-membership
      path: /data/contact/{id}/membership
      operations:
      - name: getcontactlistmembership
        method: GET
        description: Oracle Eloqua Get contact list membership
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: data-contacts
      path: /data/contacts
      operations:
      - name: searchcontacts
        method: POST
        description: Oracle Eloqua Search contacts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      token: '{{env.ELOQUA_API_KEY}}'
  exposes:
  - type: rest
    namespace: rest-contacts-rest
    port: 8080
    description: REST adapter for Oracle Eloqua REST API — Contacts. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/data/contact/{id}
      name: data-contact-id
      description: REST surface for data-contact-id.
      operations:
      - method: GET
        name: getcontact
        description: Oracle Eloqua Retrieve a contact
        call: rest-contacts.getcontact
        with:
          viewId: rest.viewId
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatecontact
        description: Oracle Eloqua Update a contact
        call: rest-contacts.updatecontact
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecontact
        description: Oracle Eloqua Delete a contact
        call: rest-contacts.deletecontact
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/contact/{id}/membership
      name: data-contact-id-membership
      description: REST surface for data-contact-id-membership.
      operations:
      - method: GET
        name: getcontactlistmembership
        description: Oracle Eloqua Get contact list membership
        call: rest-contacts.getcontactlistmembership
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/contacts
      name: data-contacts
      description: REST surface for data-contacts.
      operations:
      - method: POST
        name: searchcontacts
        description: Oracle Eloqua Search contacts
        call: rest-contacts.searchcontacts
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-contacts-mcp
    port: 9090
    transport: http
    description: MCP adapter for Oracle Eloqua REST API — Contacts. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: oracle-eloqua-retrieve-contact
      description: Oracle Eloqua Retrieve a contact
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-contacts.getcontact
      with:
        viewId: tools.viewId
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-eloqua-update-contact
      description: Oracle Eloqua Update a contact
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: rest-contacts.updatecontact
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-eloqua-delete-contact
      description: Oracle Eloqua Delete a contact
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: rest-contacts.deletecontact
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-eloqua-get-contact-list
      description: Oracle Eloqua Get contact list membership
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-contacts.getcontactlistmembership
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-eloqua-search-contacts
      description: Oracle Eloqua Search contacts
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: rest-contacts.searchcontacts
      outputParameters:
      - type: object
        mapping: $.