Constant Contact · OpenAPI Overlay 1.0.0

API Evangelist enhancements — AppConnect V3 Account Services Technology Partners API

4 actions 4 updates update extends openapi/constant-contact-technology-partners-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-token-lifetime-secondsx-refresh-tokenx-artifactsx-rate-limitsx-error-envelopex-idempotencyx-paginationx-deprecation

Targets 4

$.info
$
$.securityDefinitions['oauth2_access_code']
$.securityDefinitions['oauth2_implicit']

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements — AppConnect V3 Account Services Technology Partners API
  version: 1.0.0
  x-generated: '2026-08-13'
  x-method: generated
  x-source: openapi/constant-contact-technology-partners-api-openapi.yml
  x-note: Non-destructive enhancements API Evangelist derived for the Constant Contact V3 API. Applies
    to the sibling OpenAPI in openapi/; the original is never mutated. Every value here is sourced from
    the provider's own documentation or contract — see x-artifacts.
extends: openapi/constant-contact-technology-partners-api-openapi.yml
actions:
- target: $.info
  description: Attach provider-level operational facts and links to the API Evangelist artifact set.
  update:
    x-artifacts:
      conventions: conventions/constant-contact-conventions.yml
      errors: errors/constant-contact-problem-types.yml
      rate-limits: rate-limits/constant-contact-rate-limits.yml
      scopes: scopes/constant-contact-scopes.yml
      authentication: authentication/constant-contact-authentication.yml
      lifecycle: lifecycle/constant-contact-lifecycle.yml
      changelog: changelog/constant-contact-changelog.yml
      data-model: data-model/constant-contact-data-model.yml
      conformance: conformance/constant-contact-conformance.yml
      packages: packages/constant-contact-packages.yml
      agentic-access: agentic-access/constant-contact-agentic-access.yml
      webhooks: asyncapi/constant-contact-webhooks.yml
      skills: skills/_index.yml
    x-rate-limits:
      per_second: 4
      per_day: 10000
      reset: 00:00:00 UTC
      status: 429
      headers: none
      discriminator: error_key (throttled = per-second, quota_exceeded = daily)
      source: https://developer.constantcontact.com/api_guide/rate_limits.html
    x-error-envelope:
      rfc9457: false
      media_type: application/json
      shapes:
      - '[{error_key,error_message}]'
      - '{error_key,error_message}'
      - '{message}'
      source: openapi definitions APIErrorSchema, AuthorizationErrorSchema, StatsError, ActivityErrors
    x-idempotency:
      supported: false
      note: No idempotency key on any operation. Retried POSTs duplicate or return 409.
    x-pagination:
      style: cursor
      request:
      - limit
      - next
      - prev
      response:
      - _links.next.href
      - next_cursor
      note: _links hrefs are path-relative — prepend https://api.cc.email.
    x-deprecation:
      sunset_header: false
      deprecation_header: false
      rfc8594: false
      note: Deprecations announced in prose on the release-notes page only.
    x-contract-drift:
      refined_from_build: 3.0.149
      current_published_build: 3.0.178
      note: The provider republished the contract with 14 additional paths (Automations, Social, Billing)
        after these per-tag specs were split. See openapi/_original/HARVEST.yml.
- target: $
  description: Point consumers at the provider documentation this spec is described by.
  update:
    externalDocs:
      description: Constant Contact V3 API guide and reference
      url: https://developer.constantcontact.com/api_guide/index.html
- target: $.securityDefinitions['oauth2_access_code']
  description: Record documented token lifetimes and the refresh requirement the contract omits.
  update:
    x-token-lifetime-seconds: 86400
    x-refresh-token:
      supported: true
      requires_scope: offline_access
      lifetime: 180 days if never used
    x-discovery: none — authz.constantcontact.com serves no RFC 8414 or OIDC metadata
    x-source: https://developer.constantcontact.com/api_guide/auth_overview.html
- target: $.securityDefinitions['oauth2_implicit']
  description: Flag the implicit flow as discouraged practice.
  update:
    x-token-lifetime-seconds: 28800
    x-refresh-token:
      supported: false
    x-caution: Implicit grant is discouraged by OAuth 2.1 and RFC 9700 BCP. Prefer authorization code
      with PKCE.