ActiveCampaign · Capability

ActiveCampaign API v3 — Ecommerce

ActiveCampaign API v3 — Ecommerce. 13 operations. Lead operation: ActiveCampaign Create a Customer. Self-contained Naftiko capability covering one Activecampaign business surface.

Run with Naftiko ActivecampaignEcommerce

What You Can Do

POST
Createcustomer — ActiveCampaign Create a Customer
/v1/ecomcustomers
GET
Listallcustomers — ActiveCampaign List All Customers
/v1/ecomcustomers
GET
Getcustomer — ActiveCampaign Retrieve a Customer
/v1/ecomcustomers/{id}
PUT
Updatecustomer — ActiveCampaign Update a Customer
/v1/ecomcustomers/{id}
DELETE
Deletecustomer — ActiveCampaign Delete a Customer
/v1/ecomcustomers/{id}
GET
Listecomorderproducts — ActiveCampaign List EcomOrderProducts
/v1/ecomorderproducts
GET
Retrieveanecomorderproduct — ActiveCampaign Retrieve an EcomOrderProduct
/v1/ecomorderproducts/{id}
POST
Createorder — ActiveCampaign Create an Order
/v1/ecomorders
GET
Listallorders — ActiveCampaign List All Orders
/v1/ecomorders
GET
Getorder — ActiveCampaign Retrieve an Order
/v1/ecomorders/{ecomorderid}
DELETE
Deleteorder — ActiveCampaign Delete an Order
/v1/ecomorders/{ecomorderid}
PUT
Updateorder — ActiveCampaign Update an Order
/v1/ecomorders/{id}
GET
Listproductsfororder — ActiveCampaign List EcomOrderProducts for a Specific EcomOrder
/v1/ecomorders/{id}/orderproducts

MCP Tools

activecampaign-create-customer

ActiveCampaign Create a Customer

activecampaign-list-all-customers

ActiveCampaign List All Customers

read-only idempotent
activecampaign-retrieve-customer

ActiveCampaign Retrieve a Customer

read-only idempotent
activecampaign-update-customer

ActiveCampaign Update a Customer

idempotent
activecampaign-delete-customer

ActiveCampaign Delete a Customer

idempotent
activecampaign-list-ecomorderproducts

ActiveCampaign List EcomOrderProducts

read-only idempotent
activecampaign-retrieve-ecomorderproduct

ActiveCampaign Retrieve an EcomOrderProduct

read-only idempotent
activecampaign-create-order

ActiveCampaign Create an Order

activecampaign-list-all-orders

ActiveCampaign List All Orders

read-only idempotent
activecampaign-retrieve-order

ActiveCampaign Retrieve an Order

read-only idempotent
activecampaign-delete-order

ActiveCampaign Delete an Order

idempotent
activecampaign-update-order

ActiveCampaign Update an Order

idempotent
activecampaign-list-ecomorderproducts-specific-ecomorder

ActiveCampaign List EcomOrderProducts for a Specific EcomOrder

read-only idempotent

Capability Spec

v3-ecommerce.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: ActiveCampaign API v3 — Ecommerce
  description: 'ActiveCampaign API v3 — Ecommerce. 13 operations. Lead operation: ActiveCampaign Create a Customer. Self-contained
    Naftiko capability covering one Activecampaign business surface.'
  tags:
  - Activecampaign
  - Ecommerce
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ACTIVECAMPAIGN_API_KEY: ACTIVECAMPAIGN_API_KEY
capability:
  consumes:
  - type: http
    namespace: v3-ecommerce
    baseUri: https://{yourAccountName}.api-us1.com/api/3
    description: ActiveCampaign API v3 — Ecommerce business capability. Self-contained, no shared references.
    resources:
    - name: ecomCustomers
      path: /ecomCustomers
      operations:
      - name: createcustomer
        method: POST
        description: ActiveCampaign Create a Customer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: listallcustomers
        method: GET
        description: ActiveCampaign List All Customers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: filters[email]
          in: query
          type: string
          description: Filter by the email address of a customer.
        - name: filters[externalid]
          in: query
          type: string
          description: Filter by the id of the customer in the external service.
        - name: filters[connectionid]
          in: query
          type: string
          description: Filter by the id of the connection object for the service where the customer originates.
    - name: ecomCustomers-id
      path: /ecomCustomers/{id}
      operations:
      - name: getcustomer
        method: GET
        description: ActiveCampaign Retrieve a Customer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The id of the customer to retrieve
          required: true
      - name: updatecustomer
        method: PUT
        description: ActiveCampaign Update a Customer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The id of the customer to update
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletecustomer
        method: DELETE
        description: ActiveCampaign Delete a Customer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The id of the customer to delete.
          required: true
    - name: ecomOrderProducts
      path: /ecomOrderProducts
      operations:
      - name: listecomorderproducts
        method: GET
        description: ActiveCampaign List EcomOrderProducts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: ecomOrderProducts-id
      path: /ecomOrderProducts/{id}
      operations:
      - name: retrieveanecomorderproduct
        method: GET
        description: ActiveCampaign Retrieve an EcomOrderProduct
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the product you'd like returned.
          required: true
    - name: ecomOrders
      path: /ecomOrders
      operations:
      - name: createorder
        method: POST
        description: ActiveCampaign Create an Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: listallorders
        method: GET
        description: ActiveCampaign List All Orders
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: filters[connectionid]
          in: query
          type: integer
          description: Filter by the connection id. Must be greater than 0.
        - name: filters[externalid]
          in: query
          type: integer
          description: Filter by the external id of the order.
        - name: filters[externalcheckoutid]
          in: query
          type: string
          description: Filter by the external checkout id
        - name: filters[email]
          in: query
          type: string
          description: Filter by the customer email address.
        - name: filters[state]
          in: query
          type: integer
          description: Filter by the state of the order. 0 = Pending, 1 = Completed, 2 = Abandoned, 3 = Recovered, 4 = Waiting
            (Customer checked out but payment is not yet completed)
        - name: filters[customerid]
          in: query
          type: string
          description: Filter by the customer id
        - name: filters[external_created_date]
          in: query
          type: string
          description: Filter by the external created date
        - name: orders[connectionid]
          in: query
          type: integer
          description: Order by connection ID. Accepted values are ASC or DESC.
        - name: orders[externalid]
          in: query
          type: integer
          description: Order by external ID. Accepted values are ASC or DESC.
        - name: orders[externalcheckoutid]
          in: query
          type: string
          description: Order by external checkout ID. Accepted values are ASC or DESC.
        - name: orders[email]
          in: query
          type: string
          description: Order by email. Accepted values are ASC or DESC.
        - name: orders[state]
          in: query
          type: integer
          description: Order by state. Accepted values are ASC or DESC.
        - name: orders[customerid]
          in: query
          type: string
          description: Order by customer ID. Accepted values are ASC or DESC.
        - name: orders[external_created_date]
          in: query
          type: string
          description: Order by external created date. Accepted values are ASC or DESC.
    - name: ecomOrders-ecomOrderId
      path: /ecomOrders/{ecomOrderId}
      operations:
      - name: getorder
        method: GET
        description: ActiveCampaign Retrieve an Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ecomOrderId
          in: path
          type: integer
          description: The id of the order to retrieve.
          required: true
      - name: deleteorder
        method: DELETE
        description: ActiveCampaign Delete an Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ecomOrderId
          in: path
          type: integer
          description: The id of the order to delete.
          required: true
    - name: ecomOrders-id
      path: /ecomOrders/{id}
      operations:
      - name: updateorder
        method: PUT
        description: ActiveCampaign Update an Order
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the order to update
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: ecomOrders-id-orderProducts
      path: /ecomOrders/{id}/orderProducts
      operations:
      - name: listproductsfororder
        method: GET
        description: ActiveCampaign List EcomOrderProducts for a Specific EcomOrder
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the order whose products you'd like returned.
          required: true
    authentication:
      type: apikey
      key: Api-Token
      value: '{{env.ACTIVECAMPAIGN_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: v3-ecommerce-rest
    port: 8080
    description: REST adapter for ActiveCampaign API v3 — Ecommerce. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/ecomcustomers
      name: ecomcustomers
      description: REST surface for ecomCustomers.
      operations:
      - method: POST
        name: createcustomer
        description: ActiveCampaign Create a Customer
        call: v3-ecommerce.createcustomer
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listallcustomers
        description: ActiveCampaign List All Customers
        call: v3-ecommerce.listallcustomers
        with:
          filters[email]: rest.filters[email]
          filters[externalid]: rest.filters[externalid]
          filters[connectionid]: rest.filters[connectionid]
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomcustomers/{id}
      name: ecomcustomers-id
      description: REST surface for ecomCustomers-id.
      operations:
      - method: GET
        name: getcustomer
        description: ActiveCampaign Retrieve a Customer
        call: v3-ecommerce.getcustomer
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatecustomer
        description: ActiveCampaign Update a Customer
        call: v3-ecommerce.updatecustomer
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecustomer
        description: ActiveCampaign Delete a Customer
        call: v3-ecommerce.deletecustomer
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorderproducts
      name: ecomorderproducts
      description: REST surface for ecomOrderProducts.
      operations:
      - method: GET
        name: listecomorderproducts
        description: ActiveCampaign List EcomOrderProducts
        call: v3-ecommerce.listecomorderproducts
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorderproducts/{id}
      name: ecomorderproducts-id
      description: REST surface for ecomOrderProducts-id.
      operations:
      - method: GET
        name: retrieveanecomorderproduct
        description: ActiveCampaign Retrieve an EcomOrderProduct
        call: v3-ecommerce.retrieveanecomorderproduct
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorders
      name: ecomorders
      description: REST surface for ecomOrders.
      operations:
      - method: POST
        name: createorder
        description: ActiveCampaign Create an Order
        call: v3-ecommerce.createorder
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listallorders
        description: ActiveCampaign List All Orders
        call: v3-ecommerce.listallorders
        with:
          filters[connectionid]: rest.filters[connectionid]
          filters[externalid]: rest.filters[externalid]
          filters[externalcheckoutid]: rest.filters[externalcheckoutid]
          filters[email]: rest.filters[email]
          filters[state]: rest.filters[state]
          filters[customerid]: rest.filters[customerid]
          filters[external_created_date]: rest.filters[external_created_date]
          orders[connectionid]: rest.orders[connectionid]
          orders[externalid]: rest.orders[externalid]
          orders[externalcheckoutid]: rest.orders[externalcheckoutid]
          orders[email]: rest.orders[email]
          orders[state]: rest.orders[state]
          orders[customerid]: rest.orders[customerid]
          orders[external_created_date]: rest.orders[external_created_date]
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorders/{ecomorderid}
      name: ecomorders-ecomorderid
      description: REST surface for ecomOrders-ecomOrderId.
      operations:
      - method: GET
        name: getorder
        description: ActiveCampaign Retrieve an Order
        call: v3-ecommerce.getorder
        with:
          ecomOrderId: rest.ecomOrderId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteorder
        description: ActiveCampaign Delete an Order
        call: v3-ecommerce.deleteorder
        with:
          ecomOrderId: rest.ecomOrderId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorders/{id}
      name: ecomorders-id
      description: REST surface for ecomOrders-id.
      operations:
      - method: PUT
        name: updateorder
        description: ActiveCampaign Update an Order
        call: v3-ecommerce.updateorder
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/ecomorders/{id}/orderproducts
      name: ecomorders-id-orderproducts
      description: REST surface for ecomOrders-id-orderProducts.
      operations:
      - method: GET
        name: listproductsfororder
        description: ActiveCampaign List EcomOrderProducts for a Specific EcomOrder
        call: v3-ecommerce.listproductsfororder
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: v3-ecommerce-mcp
    port: 9090
    transport: http
    description: MCP adapter for ActiveCampaign API v3 — Ecommerce. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: activecampaign-create-customer
      description: ActiveCampaign Create a Customer
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: v3-ecommerce.createcustomer
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-list-all-customers
      description: ActiveCampaign List All Customers
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.listallcustomers
      with:
        filters[email]: tools.filters[email]
        filters[externalid]: tools.filters[externalid]
        filters[connectionid]: tools.filters[connectionid]
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-retrieve-customer
      description: ActiveCampaign Retrieve a Customer
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.getcustomer
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-update-customer
      description: ActiveCampaign Update a Customer
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: v3-ecommerce.updatecustomer
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-delete-customer
      description: ActiveCampaign Delete a Customer
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: v3-ecommerce.deletecustomer
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-list-ecomorderproducts
      description: ActiveCampaign List EcomOrderProducts
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.listecomorderproducts
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-retrieve-ecomorderproduct
      description: ActiveCampaign Retrieve an EcomOrderProduct
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.retrieveanecomorderproduct
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-create-order
      description: ActiveCampaign Create an Order
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: v3-ecommerce.createorder
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-list-all-orders
      description: ActiveCampaign List All Orders
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.listallorders
      with:
        filters[connectionid]: tools.filters[connectionid]
        filters[externalid]: tools.filters[externalid]
        filters[externalcheckoutid]: tools.filters[externalcheckoutid]
        filters[email]: tools.filters[email]
        filters[state]: tools.filters[state]
        filters[customerid]: tools.filters[customerid]
        filters[external_created_date]: tools.filters[external_created_date]
        orders[connectionid]: tools.orders[connectionid]
        orders[externalid]: tools.orders[externalid]
        orders[externalcheckoutid]: tools.orders[externalcheckoutid]
        orders[email]: tools.orders[email]
        orders[state]: tools.orders[state]
        orders[customerid]: tools.orders[customerid]
        orders[external_created_date]: tools.orders[external_created_date]
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-retrieve-order
      description: ActiveCampaign Retrieve an Order
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.getorder
      with:
        ecomOrderId: tools.ecomOrderId
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-delete-order
      description: ActiveCampaign Delete an Order
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: v3-ecommerce.deleteorder
      with:
        ecomOrderId: tools.ecomOrderId
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-update-order
      description: ActiveCampaign Update an Order
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: v3-ecommerce.updateorder
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: activecampaign-list-ecomorderproducts-specific-ecomorder
      description: ActiveCampaign List EcomOrderProducts for a Specific EcomOrder
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-ecommerce.listproductsfororder
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.