Constant Contact · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for AppConnect V3 Events API

12 actions 12 updates phrasing extends openapi/constant-contact-events-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Constant Contact's API. It is a proposal applied on top of the contract, not a document Constant Contact publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 12

$.info
$.paths['/events'].get
$.paths['/events/default'].post
$.paths['/events/{event_id}'].get
$.paths['/events/{event_id}'].patch
$.paths['/events/{event_id}/copy'].post
$.paths['/events/{event_id}/check_in/tickets'].post
$.paths['/events/{event_id}/undo_check_in/tickets'].post
$.paths['/events/{event_id}/tracks/{track_id}/registrations/{registration_id}'].get
$.paths['/events/{event_id}/tracks/{track_id}/registrations'].get
$.paths['/events/{event_id}/tracks/{track_id}/registrations'].put
$.paths['/events/{event_id}/tracks/{track_id}/registrations/payment_status'].put

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for AppConnect V3 Events API
  version: 1.0.0
extends: openapi/constant-contact-events-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 11
- target: $.paths['/events'].get
  update:
    x-apievangelist-phrasing:
      intent: List events
      effect: read
      questions:
      - Which events do I have, and what's their status?
      - Can I search my events by text and sort them?
      instructions:
      - text: List my events.
      - text: Find events matching {search_text}.
        slots:
          search_text: query.search_text
      - text: List events with status {event_status}.
        slots:
          event_status: query.event_status
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/default'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a draft event with defaults
      effect: write
      questions:
      - Can I create an event that already has a registration form and landing page?
      - What status does a newly created event start in?
      instructions:
      - text: Create an event called {name}.
        slots:
          name: query.name
      - text: Create event {name} running {start_time} to {end_time}.
        slots:
          name: query.name
          start_time: query.start_time
          end_time: query.end_time
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one event's details
      effect: read
      questions:
      - What are the details of a specific event?
      - Can I include extra event data when fetching one event?
      instructions:
      - text: Show event {event_id}.
        slots:
          event_id: path.event_id
      - text: Get event {event_id} including {include}.
        slots:
          event_id: path.event_id
          include: query.include
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an event
      effect: write
      questions:
      - Can I change an event's title or time after it's live?
      - Why can't I edit an event that's complete or canceled?
      instructions:
      - text: Retitle event {event_id} to {title}.
        slots:
          event_id: path.event_id
          title: requestBody.title
      - text: Move event {event_id} to start {event_start} and end {event_end}.
        slots:
          event_id: path.event_id
          event_start: requestBody.event_start
          event_end: requestBody.event_end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/copy'].post
  update:
    x-apievangelist-phrasing:
      intent: Duplicate an existing event
      effect: write
      questions:
      - Can I copy last year's event with its forms and landing page?
      - Which event statuses can be copied?
      instructions:
      - text: Copy event {event_id} as {target_event_name}.
        slots:
          event_id: path.event_id
          target_event_name: requestBody.target_event_name
      - text: Duplicate event {event_id} into a new draft named {target_event_name}.
        slots:
          event_id: path.event_id
          target_event_name: requestBody.target_event_name
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/check_in/tickets'].post
  update:
    x-apievangelist-phrasing:
      intent: Check in event tickets
      effect: write
      questions:
      - Can I mark attendees' tickets as checked in at the door?
      - Why does checking in a canceled ticket fail?
      instructions:
      - text: Check in tickets {order_ticket_keys} for event {event_id}.
        slots:
          event_id: path.event_id
          order_ticket_keys: requestBody.order_ticket_keys
      - text: Mark tickets {order_ticket_keys} as arrived at event {event_id}.
        slots:
          event_id: path.event_id
          order_ticket_keys: requestBody.order_ticket_keys
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/undo_check_in/tickets'].post
  update:
    x-apievangelist-phrasing:
      intent: Undo ticket check-in
      effect: write
      questions:
      - I checked in the wrong ticket — can I reverse it?
      - Is it possible to mark a ticket as not checked in again?
      instructions:
      - text: Undo check-in of tickets {order_ticket_keys} for event {event_id}.
        slots:
          event_id: path.event_id
          order_ticket_keys: requestBody.order_ticket_keys
      - text: Reverse the check-in for {order_ticket_keys} at event {event_id}.
        slots:
          event_id: path.event_id
          order_ticket_keys: requestBody.order_ticket_keys
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/tracks/{track_id}/registrations/{registration_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one event registration
      effect: read
      questions:
      - What did a specific attendee submit when registering?
      - Can I look up a single registration by its ID?
      instructions:
      - text: Show registration {registration_id} for event {event_id} track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          registration_id: path.registration_id
      - text: Get details of registrant {registration_id} in event {event_id}, track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          registration_id: path.registration_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/tracks/{track_id}/registrations'].get
  update:
    x-apievangelist-phrasing:
      intent: List registrations for an event
      effect: read
      questions:
      - Who has registered for my event?
      - Can I filter registrations by payment status or registration status?
      instructions:
      - text: List registrations for event {event_id} track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
      - text: List unpaid registrations with status {payment_status} for event {event_id}, track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          payment_status: query.payment_status
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/tracks/{track_id}/registrations'].put
  update:
    x-apievangelist-phrasing:
      intent: Change the status of event registrations
      effect: write
      questions:
      - Can I cancel or approve several registrations at once?
      - When I cancel registrations, can the tickets go back into inventory?
      instructions:
      - text: Set registrations {registration_ids} in event {event_id} track {track_id} to {registration_status}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          registration_ids: requestBody.registration_ids
          registration_status: requestBody.registration_status
      - text: Change registration status to {registration_status} for {registration_ids} on event {event_id}, track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          registration_status: requestBody.registration_status
          registration_ids: requestBody.registration_ids
      method: generated
      generated: '2026-10-01'
- target: $.paths['/events/{event_id}/tracks/{track_id}/registrations/payment_status'].put
  update:
    x-apievangelist-phrasing:
      intent: Update payment status for registrations
      effect: write
      questions:
      - Can I mark registrations as paid after taking cash at the door?
      - Why weren't my free registrations updated when I changed payment status?
      instructions:
      - text: Mark registrations {registration_ids} for event {event_id} track {track_id} as {payment_status}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          registration_ids: requestBody.registration_ids
          payment_status: requestBody.payment_status
      - text: Set payment status {payment_status} on registrations {registration_ids} in event {event_id}, track {track_id}.
        slots:
          event_id: path.event_id
          track_id: path.track_id
          payment_status: requestBody.payment_status
          registration_ids: requestBody.registration_ids
      method: generated
      generated: '2026-10-01'