WildApricot · Capability

WildApricot Admin API — Contacts.CustomFields

WildApricot Admin API — Contacts.CustomFields. 4 operations. Lead operation: WildApricot List of Custom Fields Related to Contacts and Members.. Self-contained Naftiko capability covering one Wildapricot business surface.

Run with Naftiko WildapricotContacts.CustomFields

What You Can Do

GET
Getcontactfielddefinitions — WildApricot List of Custom Fields Related to Contacts and Members.
/v1/accounts/{accountid}/contactfields
POST
Createcontactfielddefinition — WildApricot Creates a New Contact / Membership Field
/v1/accounts/{accountid}/contactfields
PUT
Updatecontactfielddefinition — WildApricot Updates an Existing Contact / Membership Field
/v1/accounts/{accountid}/contactfields/{contactfieldid}
DELETE
Deletecontactfielddefinition — WildApricot Removes Existing Field by Id
/v1/accounts/{accountid}/contactfields/{contactfieldid}

MCP Tools

wildapricot-list-custom-fields-related

WildApricot List of Custom Fields Related to Contacts and Members.

read-only idempotent
wildapricot-creates-new-contact-membership

WildApricot Creates a New Contact / Membership Field

wildapricot-updates-existing-contact-membership

WildApricot Updates an Existing Contact / Membership Field

idempotent
wildapricot-removes-existing-field-id

WildApricot Removes Existing Field by Id

idempotent

Capability Spec

admin-contacts-customfields.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: WildApricot Admin API — Contacts.CustomFields
  description: 'WildApricot Admin API — Contacts.CustomFields. 4 operations. Lead operation: WildApricot List of Custom Fields
    Related to Contacts and Members.. Self-contained Naftiko capability covering one Wildapricot business surface.'
  tags:
  - Wildapricot
  - Contacts.CustomFields
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WILDAPRICOT_API_KEY: WILDAPRICOT_API_KEY
capability:
  consumes:
  - type: http
    namespace: admin-contacts-customfields
    baseUri: https://api.wildapricot.org/v2.2
    description: WildApricot Admin API — Contacts.CustomFields business capability. Self-contained, no shared references.
    resources:
    - name: accounts-accountId-contactfields
      path: /accounts/{accountId}/contactfields
      operations:
      - name: getcontactfielddefinitions
        method: GET
        description: WildApricot List of Custom Fields Related to Contacts and Members.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: showSectionDividers
          in: query
          type: boolean
          description: Default value is false. Specifies whether section dividers also should be included in the response.
      - name: createcontactfielddefinition
        method: POST
        description: WildApricot Creates a New Contact / Membership Field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: accounts-accountId-contactfields-contactFieldId
      path: /accounts/{accountId}/contactfields/{contactFieldId}
      operations:
      - name: updatecontactfielddefinition
        method: PUT
        description: WildApricot Updates an Existing Contact / Membership Field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactFieldId
          in: path
          type: integer
          description: contact field identifier
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletecontactfielddefinition
        method: DELETE
        description: WildApricot Removes Existing Field by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactFieldId
          in: path
          type: integer
          description: contact field identifier
          required: true
    authentication:
      type: bearer
      token: '{{env.WILDAPRICOT_API_KEY}}'
  exposes:
  - type: rest
    namespace: admin-contacts-customfields-rest
    port: 8080
    description: REST adapter for WildApricot Admin API — Contacts.CustomFields. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/accounts/{accountid}/contactfields
      name: accounts-accountid-contactfields
      description: REST surface for accounts-accountId-contactfields.
      operations:
      - method: GET
        name: getcontactfielddefinitions
        description: WildApricot List of Custom Fields Related to Contacts and Members.
        call: admin-contacts-customfields.getcontactfielddefinitions
        with:
          showSectionDividers: rest.showSectionDividers
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcontactfielddefinition
        description: WildApricot Creates a New Contact / Membership Field
        call: admin-contacts-customfields.createcontactfielddefinition
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/accounts/{accountid}/contactfields/{contactfieldid}
      name: accounts-accountid-contactfields-contactfieldid
      description: REST surface for accounts-accountId-contactfields-contactFieldId.
      operations:
      - method: PUT
        name: updatecontactfielddefinition
        description: WildApricot Updates an Existing Contact / Membership Field
        call: admin-contacts-customfields.updatecontactfielddefinition
        with:
          contactFieldId: rest.contactFieldId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecontactfielddefinition
        description: WildApricot Removes Existing Field by Id
        call: admin-contacts-customfields.deletecontactfielddefinition
        with:
          contactFieldId: rest.contactFieldId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: admin-contacts-customfields-mcp
    port: 9090
    transport: http
    description: MCP adapter for WildApricot Admin API — Contacts.CustomFields. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: wildapricot-list-custom-fields-related
      description: WildApricot List of Custom Fields Related to Contacts and Members.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-contacts-customfields.getcontactfielddefinitions
      with:
        showSectionDividers: tools.showSectionDividers
      outputParameters:
      - type: object
        mapping: $.
    - name: wildapricot-creates-new-contact-membership
      description: WildApricot Creates a New Contact / Membership Field
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-contacts-customfields.createcontactfielddefinition
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: wildapricot-updates-existing-contact-membership
      description: WildApricot Updates an Existing Contact / Membership Field
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: admin-contacts-customfields.updatecontactfielddefinition
      with:
        contactFieldId: tools.contactFieldId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: wildapricot-removes-existing-field-id
      description: WildApricot Removes Existing Field by Id
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: admin-contacts-customfields.deletecontactfielddefinition
      with:
        contactFieldId: tools.contactFieldId
      outputParameters:
      - type: object
        mapping: $.