Constant Contact · Capability

AppConnect V3 — Events

AppConnect V3 — Events. 11 operations. Lead operation: GET a collection of events.. Self-contained Naftiko capability covering one Constant Contact business surface.

Run with Naftiko Constant ContactEvents

What You Can Do

GET
Findevents — GET a collection of events.
/v1/events
POST
Adddefaultevent — POST (create) a new event.
/v1/events/default
GET
Getevent2 — GET details for a single event.
/v1/events/{event-id}
PATCH
Patchevent — PATCH (update) an event.
/v1/events/{event-id}
POST
Checkintickets — Check in event tickets.
/v1/events/{event-id}/check-in/tickets
POST
Copyevent — POST (copy) an existing event.
/v1/events/{event-id}/copy
GET
Findregistrationsusingget — Get a list of registrations for an event.
/v1/events/{event-id}/tracks/{track-id}/registrations
PUT
Updateregistrationstatususingput — Update status for event registrations.
/v1/events/{event-id}/tracks/{track-id}/registrations
PUT
Updateregistrationpaymentstatususingput — Update payment status for event registrations.
/v1/events/{event-id}/tracks/{track-id}/registrations/payment-status
GET
Getregistrationinfo — Get registration details for an event.
/v1/events/{event-id}/tracks/{track-id}/registrations/{registration-id}
POST
Undocheckintickets — Undo event ticket check-in.
/v1/events/{event-id}/undo-check-in/tickets

MCP Tools

get-collection-events

GET a collection of events.

read-only idempotent
post-create-new-event

POST (create) a new event.

get-details-single-event

GET details for a single event.

read-only idempotent
patch-update-event

PATCH (update) an event.

idempotent
check-event-tickets

Check in event tickets.

read-only
post-copy-existing-event

POST (copy) an existing event.

get-list-registrations-event

Get a list of registrations for an event.

read-only idempotent
update-status-event-registrations

Update status for event registrations.

idempotent
update-payment-status-event-registrations

Update payment status for event registrations.

idempotent
get-registration-details-event

Get registration details for an event.

read-only idempotent
undo-event-ticket-check

Undo event ticket check-in.

Capability Spec

v3-events.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: AppConnect V3 — Events
  description: 'AppConnect V3 — Events. 11 operations. Lead operation: GET a collection of events.. Self-contained Naftiko
    capability covering one Constant Contact business surface.'
  tags:
  - Constant Contact
  - Events
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    CONSTANT_CONTACT_API_KEY: CONSTANT_CONTACT_API_KEY
capability:
  consumes:
  - type: http
    namespace: v3-events
    baseUri: https://api.cc.email/v3
    description: AppConnect V3 — Events business capability. Self-contained, no shared references.
    resources:
    - name: events
      path: /events
      operations:
      - name: findevents
        method: GET
        description: GET a collection of events.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_status
          in: query
          type: string
          description: Use to return only events that meet the specified status. Acceptable values include `ACTIVE`,`DRAFT`,
            `COMPLETE`, `DELETED`,`CANCELLED`, and `ERROR`.
        - name: search_text
          in: query
          type: string
          description: Use to return only events that include the specified text.
        - name: sort_by
          in: query
          type: string
          description: 'Use to sort resulting events by one of the following properties: `name`, `start_time`, `end_time`,
            `created_time`, or `updated_time`.'
        - name: sort_order
          in: query
          type: string
          description: Sort order for the `sort_by parameter`. Accepted values include `ASC` (ascending) or `DESC` (descending).
            Defaults to `ASC` if `sort_by` is provided.
        - name: limit
          in: query
          type: string
          description: Limit the number of results to return per page. Default and maximum is `100`.
        - name: prev
          in: query
          type: string
          description: Cursor for retrieving the previous page of results. This value is obtained from the `prev_cursor` field
            in a previous response.
        - name: next
          in: query
          type: string
          description: Cursor for retrieving the next page of results. This value is obtained from the `next_cursor` field
            in a previous response.
    - name: events-default
      path: /events/default
      operations:
      - name: adddefaultevent
        method: POST
        description: POST (create) a new event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: query
          type: string
          description: Name for the new event. If not provided, a default name will be generated.
        - name: start_time
          in: query
          type: string
          description: Event start time in ISO 8601 format. If not provided, defaults to a future date.
        - name: end_time
          in: query
          type: string
          description: Event end time in ISO 8601 format. If not provided, defaults to one hour after start time.
        - name: placeholder_campaign_id
          in: query
          type: string
          description: Placeholder campaign ID for the event.
    - name: events-event_id
      path: /events/{event_id}
      operations:
      - name: getevent2
        method: GET
        description: GET details for a single event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: include
          in: query
          type: boolean
          description: Use to include (`true`) or exclude (`false`) event setting properties in the results.
      - name: patchevent
        method: PATCH
        description: PATCH (update) an event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event to update.
          required: true
        - name: body
          in: body
          type: string
          description: A JSON request body containing the event fields to update.
          required: true
    - name: events-event_id-check_in-tickets
      path: /events/{event_id}/check_in/tickets
      operations:
      - name: checkintickets
        method: POST
        description: Check in event tickets.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: body
          in: body
          type: string
          description: Set of order ticket keys to mark as checked in.
          required: true
    - name: events-event_id-copy
      path: /events/{event_id}/copy
      operations:
      - name: copyevent
        method: POST
        description: POST (copy) an existing event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID of the event to copy.
          required: true
        - name: body
          in: body
          type: string
          description: A JSON request body containing the copy options.
          required: true
    - name: events-event_id-tracks-track_id-registrations
      path: /events/{event_id}/tracks/{track_id}/registrations
      operations:
      - name: findregistrationsusingget
        method: GET
        description: Get a list of registrations for an event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: track_id
          in: path
          type: string
          description: The track ID that uniquely identifies the event track.
          required: true
        - name: registration_status
          in: query
          type: string
          description: Filter registration results by status.
        - name: payment_status
          in: query
          type: string
          description: Filter registration results by payment status.
        - name: search_text
          in: query
          type: string
          description: Filter registration results by first name, last name, or email address.
        - name: sort_by
          in: query
          type: string
          description: Specify the field to use to sort the results.
        - name: sort_order
          in: query
          type: string
          description: Use to specify how you want the results sorted.
        - name: page_size
          in: query
          type: string
          description: Alternative to the <code>limit</code> parameter to limit the number of results returned per page. If
            specifying both the <code>limit</code> and <code>page_size<
        - name: limit
          in: query
          type: string
          description: Limit the number of results returned per page. If specifying both the <code>limit</code> and <code>page_size</code>
            query parameters, they must be the same valu
        - name: prev
          in: query
          type: string
          description: Cursor for pagination used to get the previous page of results (mutually exclusive with <code>next</code>).
        - name: next
          in: query
          type: string
          description: Cursor for pagination used to get the next page of results (mutually exclusive with <code>prev</code>).
      - name: updateregistrationstatususingput
        method: PUT
        description: Update status for event registrations.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: track_id
          in: path
          type: string
          description: The track key that uniquely identifies the event track.
          required: true
        - name: increase_count
          in: query
          type: boolean
          description: Override count flag.
        - name: increase_item_count
          in: query
          type: boolean
          description: Override item count flag.
        - name: return_items_to_inventory
          in: query
          type: boolean
          description: Return items to inventory flag. Defaults to `true`.
        - name: body
          in: body
          type: string
          description: Registration status update request data.
          required: true
    - name: events-event_id-tracks-track_id-registrations-payment_status
      path: /events/{event_id}/tracks/{track_id}/registrations/payment_status
      operations:
      - name: updateregistrationpaymentstatususingput
        method: PUT
        description: Update payment status for event registrations.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: track_id
          in: path
          type: string
          description: The track key that uniquely identifies the event track.
          required: true
        - name: body
          in: body
          type: string
          description: Payment status update request data.
          required: true
    - name: events-event_id-tracks-track_id-registrations-registration_id
      path: /events/{event_id}/tracks/{track_id}/registrations/{registration_id}
      operations:
      - name: getregistrationinfo
        method: GET
        description: Get registration details for an event.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: track_id
          in: path
          type: string
          description: The track key that uniquely identifies the event track.
          required: true
        - name: registration_id
          in: path
          type: string
          description: The ID that uniquely identifies the registration.
          required: true
    - name: events-event_id-undo_check_in-tickets
      path: /events/{event_id}/undo_check_in/tickets
      operations:
      - name: undocheckintickets
        method: POST
        description: Undo event ticket check-in.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: event_id
          in: path
          type: string
          description: The ID that uniquely identifies the event.
          required: true
        - name: body
          in: body
          type: string
          description: Set of order ticket keys to mark as not checked in.
          required: true
  exposes:
  - type: rest
    namespace: v3-events-rest
    port: 8080
    description: REST adapter for AppConnect V3 — Events. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/events
      name: events
      description: REST surface for events.
      operations:
      - method: GET
        name: findevents
        description: GET a collection of events.
        call: v3-events.findevents
        with:
          event_status: rest.event_status
          search_text: rest.search_text
          sort_by: rest.sort_by
          sort_order: rest.sort_order
          limit: rest.limit
          prev: rest.prev
          next: rest.next
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/default
      name: events-default
      description: REST surface for events-default.
      operations:
      - method: POST
        name: adddefaultevent
        description: POST (create) a new event.
        call: v3-events.adddefaultevent
        with:
          name: rest.name
          start_time: rest.start_time
          end_time: rest.end_time
          placeholder_campaign_id: rest.placeholder_campaign_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}
      name: events-event-id
      description: REST surface for events-event_id.
      operations:
      - method: GET
        name: getevent2
        description: GET details for a single event.
        call: v3-events.getevent2
        with:
          event_id: rest.event_id
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: patchevent
        description: PATCH (update) an event.
        call: v3-events.patchevent
        with:
          event_id: rest.event_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/check-in/tickets
      name: events-event-id-check-in-tickets
      description: REST surface for events-event_id-check_in-tickets.
      operations:
      - method: POST
        name: checkintickets
        description: Check in event tickets.
        call: v3-events.checkintickets
        with:
          event_id: rest.event_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/copy
      name: events-event-id-copy
      description: REST surface for events-event_id-copy.
      operations:
      - method: POST
        name: copyevent
        description: POST (copy) an existing event.
        call: v3-events.copyevent
        with:
          event_id: rest.event_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/tracks/{track-id}/registrations
      name: events-event-id-tracks-track-id-registrations
      description: REST surface for events-event_id-tracks-track_id-registrations.
      operations:
      - method: GET
        name: findregistrationsusingget
        description: Get a list of registrations for an event.
        call: v3-events.findregistrationsusingget
        with:
          event_id: rest.event_id
          track_id: rest.track_id
          registration_status: rest.registration_status
          payment_status: rest.payment_status
          search_text: rest.search_text
          sort_by: rest.sort_by
          sort_order: rest.sort_order
          page_size: rest.page_size
          limit: rest.limit
          prev: rest.prev
          next: rest.next
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateregistrationstatususingput
        description: Update status for event registrations.
        call: v3-events.updateregistrationstatususingput
        with:
          event_id: rest.event_id
          track_id: rest.track_id
          increase_count: rest.increase_count
          increase_item_count: rest.increase_item_count
          return_items_to_inventory: rest.return_items_to_inventory
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/tracks/{track-id}/registrations/payment-status
      name: events-event-id-tracks-track-id-registrations-payment-status
      description: REST surface for events-event_id-tracks-track_id-registrations-payment_status.
      operations:
      - method: PUT
        name: updateregistrationpaymentstatususingput
        description: Update payment status for event registrations.
        call: v3-events.updateregistrationpaymentstatususingput
        with:
          event_id: rest.event_id
          track_id: rest.track_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/tracks/{track-id}/registrations/{registration-id}
      name: events-event-id-tracks-track-id-registrations-registration-id
      description: REST surface for events-event_id-tracks-track_id-registrations-registration_id.
      operations:
      - method: GET
        name: getregistrationinfo
        description: Get registration details for an event.
        call: v3-events.getregistrationinfo
        with:
          event_id: rest.event_id
          track_id: rest.track_id
          registration_id: rest.registration_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/events/{event-id}/undo-check-in/tickets
      name: events-event-id-undo-check-in-tickets
      description: REST surface for events-event_id-undo_check_in-tickets.
      operations:
      - method: POST
        name: undocheckintickets
        description: Undo event ticket check-in.
        call: v3-events.undocheckintickets
        with:
          event_id: rest.event_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: v3-events-mcp
    port: 9090
    transport: http
    description: MCP adapter for AppConnect V3 — Events. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-collection-events
      description: GET a collection of events.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-events.findevents
      with:
        event_status: tools.event_status
        search_text: tools.search_text
        sort_by: tools.sort_by
        sort_order: tools.sort_order
        limit: tools.limit
        prev: tools.prev
        next: tools.next
      outputParameters:
      - type: object
        mapping: $.
    - name: post-create-new-event
      description: POST (create) a new event.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: v3-events.adddefaultevent
      with:
        name: tools.name
        start_time: tools.start_time
        end_time: tools.end_time
        placeholder_campaign_id: tools.placeholder_campaign_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-details-single-event
      description: GET details for a single event.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-events.getevent2
      with:
        event_id: tools.event_id
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: patch-update-event
      description: PATCH (update) an event.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: v3-events.patchevent
      with:
        event_id: tools.event_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: check-event-tickets
      description: Check in event tickets.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: v3-events.checkintickets
      with:
        event_id: tools.event_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: post-copy-existing-event
      description: POST (copy) an existing event.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: v3-events.copyevent
      with:
        event_id: tools.event_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-list-registrations-event
      description: Get a list of registrations for an event.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-events.findregistrationsusingget
      with:
        event_id: tools.event_id
        track_id: tools.track_id
        registration_status: tools.registration_status
        payment_status: tools.payment_status
        search_text: tools.search_text
        sort_by: tools.sort_by
        sort_order: tools.sort_order
        page_size: tools.page_size
        limit: tools.limit
        prev: tools.prev
        next: tools.next
      outputParameters:
      - type: object
        mapping: $.
    - name: update-status-event-registrations
      description: Update status for event registrations.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: v3-events.updateregistrationstatususingput
      with:
        event_id: tools.event_id
        track_id: tools.track_id
        increase_count: tools.increase_count
        increase_item_count: tools.increase_item_count
        return_items_to_inventory: tools.return_items_to_inventory
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-payment-status-event-registrations
      description: Update payment status for event registrations.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: v3-events.updateregistrationpaymentstatususingput
      with:
        event_id: tools.event_id
        track_id: tools.track_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-registration-details-event
      description: Get registration details for an event.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: v3-events.getregistrationinfo
      with:
        event_id: tools.event_id
        track_id: tools.track_id
        registration_id: tools.registration_id
      outputParameters:
      - type: object
        mapping: $.
    - name: undo-event-ticket-check
      description: Undo event ticket check-in.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: v3-events.undocheckintickets
      with:
        event_id: tools.event_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.