WildApricot · Capability

WildApricot Admin API — Membership.Operations

WildApricot Admin API — Membership.Operations. 3 operations. Lead operation: WildApricot Approve Pending Membership.. Self-contained Naftiko capability covering one Wildapricot business surface.

Run with Naftiko WildapricotMembership.Operations

What You Can Do

POST
Approvependingmembership — WildApricot Approve Pending Membership.
/v1/rpc/{accountid}/approvependingmembership
POST
Generateinvoiceforpendingmembership — WildApricot Generate or Update Invoice for Pending Membership.
/v1/rpc/{accountid}/generateinvoiceforpendingmembership
POST
Rejectpendingmembership — WildApricot Reject Pending Membership.
/v1/rpc/{accountid}/rejectpendingmembership

MCP Tools

wildapricot-approve-pending-membership

WildApricot Approve Pending Membership.

wildapricot-generate-update-invoice-pending

WildApricot Generate or Update Invoice for Pending Membership.

wildapricot-reject-pending-membership

WildApricot Reject Pending Membership.

Capability Spec

admin-membership-operations.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: WildApricot Admin API — Membership.Operations
  description: 'WildApricot Admin API — Membership.Operations. 3 operations. Lead operation: WildApricot Approve Pending Membership..
    Self-contained Naftiko capability covering one Wildapricot business surface.'
  tags:
  - Wildapricot
  - Membership.Operations
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WILDAPRICOT_API_KEY: WILDAPRICOT_API_KEY
capability:
  consumes:
  - type: http
    namespace: admin-membership-operations
    baseUri: https://api.wildapricot.org/v2.2
    description: WildApricot Admin API — Membership.Operations business capability. Self-contained, no shared references.
    resources:
    - name: rpc-accountId-ApprovePendingMembership
      path: /rpc/{accountId}/ApprovePendingMembership
      operations:
      - name: approvependingmembership
        method: POST
        description: WildApricot Approve Pending Membership.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactId
          in: query
          type: integer
          description: Contact ID to approve membership
          required: true
    - name: rpc-accountId-GenerateInvoiceForPendingMembership
      path: /rpc/{accountId}/GenerateInvoiceForPendingMembership
      operations:
      - name: generateinvoiceforpendingmembership
        method: POST
        description: WildApricot Generate or Update Invoice for Pending Membership.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactId
          in: query
          type: integer
          description: Contact ID with pending membership
          required: true
        - name: updateIfExists
          in: query
          type: boolean
          description: update the invoice items if already exists
    - name: rpc-accountId-RejectPendingMembership
      path: /rpc/{accountId}/RejectPendingMembership
      operations:
      - name: rejectpendingmembership
        method: POST
        description: WildApricot Reject Pending Membership.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactId
          in: query
          type: integer
          description: Contact ID to reject membership
          required: true
    authentication:
      type: bearer
      token: '{{env.WILDAPRICOT_API_KEY}}'
  exposes:
  - type: rest
    namespace: admin-membership-operations-rest
    port: 8080
    description: REST adapter for WildApricot Admin API — Membership.Operations. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/rpc/{accountid}/approvependingmembership
      name: rpc-accountid-approvependingmembership
      description: REST surface for rpc-accountId-ApprovePendingMembership.
      operations:
      - method: POST
        name: approvependingmembership
        description: WildApricot Approve Pending Membership.
        call: admin-membership-operations.approvependingmembership
        with:
          contactId: rest.contactId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/rpc/{accountid}/generateinvoiceforpendingmembership
      name: rpc-accountid-generateinvoiceforpendingmembership
      description: REST surface for rpc-accountId-GenerateInvoiceForPendingMembership.
      operations:
      - method: POST
        name: generateinvoiceforpendingmembership
        description: WildApricot Generate or Update Invoice for Pending Membership.
        call: admin-membership-operations.generateinvoiceforpendingmembership
        with:
          contactId: rest.contactId
          updateIfExists: rest.updateIfExists
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/rpc/{accountid}/rejectpendingmembership
      name: rpc-accountid-rejectpendingmembership
      description: REST surface for rpc-accountId-RejectPendingMembership.
      operations:
      - method: POST
        name: rejectpendingmembership
        description: WildApricot Reject Pending Membership.
        call: admin-membership-operations.rejectpendingmembership
        with:
          contactId: rest.contactId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: admin-membership-operations-mcp
    port: 9090
    transport: http
    description: MCP adapter for WildApricot Admin API — Membership.Operations. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: wildapricot-approve-pending-membership
      description: WildApricot Approve Pending Membership.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-membership-operations.approvependingmembership
      with:
        contactId: tools.contactId
      outputParameters:
      - type: object
        mapping: $.
    - name: wildapricot-generate-update-invoice-pending
      description: WildApricot Generate or Update Invoice for Pending Membership.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-membership-operations.generateinvoiceforpendingmembership
      with:
        contactId: tools.contactId
        updateIfExists: tools.updateIfExists
      outputParameters:
      - type: object
        mapping: $.
    - name: wildapricot-reject-pending-membership
      description: WildApricot Reject Pending Membership.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-membership-operations.rejectpendingmembership
      with:
        contactId: tools.contactId
      outputParameters:
      - type: object
        mapping: $.