Conga · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Conga Sign Approval API

13 actions 13 updates phrasing extends openapi/conga-approval-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Conga's API. It is a proposal applied on top of the contract, not a document Conga publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 13

$.info
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals'].put
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals'].post
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].get
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].put
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].delete
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields'].post
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].get
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].put
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].post
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].delete
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}/conditionalFields'].put
$.paths['/v1/cs-packages/{packageId}/documents/{documentId}/signers/{signerId}/approvals'].get

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 Conga Sign Approval API
  version: 1.0.0
extends: openapi/conga-approval-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: 12
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals'].put
  update:
    x-apievangelist-phrasing:
      intent: Update all approvals on a document
      effect: write
      questions:
      - Can I update every signature approval on a document in one request?
      - Is there a way to replace the whole set of approvals on a package document?
      instructions:
      - text: Update all of the approvals on document {documentId} in package {packageId}.
        slots:
          documentId: path.documentId
          packageId: path.packageId
      - text: Rewrite the full approval list for document {documentId} of package {packageId}.
        slots:
          documentId: path.documentId
          packageId: path.packageId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a signature approval to a document
      effect: write
      questions:
      - How do I add a new signature block for a role on a Conga Sign document?
      - Can a new approval be marked optional or require captured signatures?
      - Does creating an approval support text anchor extraction?
      instructions:
      - text: Create an approval for role {role} on document {documentId} in package {packageId}.
        slots:
          role: requestBody.role
          documentId: path.documentId
          packageId: path.packageId
      - text: Add an optional approval named {name} to document {documentId} of package {packageId}.
        slots:
          name: requestBody.name
          documentId: path.documentId
          packageId: path.packageId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Retrieve one approval on a document
      effect: read
      questions:
      - What fields and role are set on a specific approval in a document?
      - Has a particular signature approval been signed yet?
      instructions:
      - text: Get approval {approvalId} on document {documentId} in package {packageId}.
        slots:
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Show the details of approval {approvalId} in package {packageId}, document {documentId}.
        slots:
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a specific approval on a document
      effect: write
      questions:
      - Can I change the role or make one existing approval optional?
      - How do I disable a single signature approval on a document?
      instructions:
      - text: Assign approval {approvalId} on document {documentId} of package {packageId} to role {role}.
        slots:
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
          role: requestBody.role
      - text: Update just approval {approvalId} in package {packageId}, document {documentId}.
        slots:
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an approval from a document
      effect: destructive
      questions:
      - Can I remove a signature approval from a document before sending it?
      - What happens to a document when I delete one of its approvals?
      instructions:
      - text: Delete approval {approvalId} from document {documentId} in package {packageId}.
        slots:
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Remove signature approval {approvalId} from package {packageId}, document {documentId}.
        slots:
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a field to an approval with a generated name
      effect: write
      questions:
      - How do I place a new signature or input field on an existing approval?
      - Can I add a field to an approval and let the system name it?
      instructions:
      - text: Add a {type} field on page {page} to approval {approvalId} of document {documentId} in package {packageId}.
        slots:
          type: requestBody.type
          page: requestBody.page
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Create an auto-named field at left {left}, top {top} on approval {approvalId}, document {documentId}, package {packageId}.
        slots:
          left: requestBody.left
          top: requestBody.top
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Retrieve a field on an approval
      effect: read
      questions:
      - Where is a given field positioned on an approval and what type is it?
      - Can I read the current value of a field attached to an approval?
      instructions:
      - text: Get field {fieldId} on approval {approvalId} in document {documentId} of package {packageId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Show field {fieldId} from approval {approvalId}, package {packageId}, document {documentId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update an existing field on an approval
      effect: write
      questions:
      - How do I move or resize a field that's already on an approval?
      - Will the field ID in my JSON body be used when updating an approval field?
      instructions:
      - text: Move field {fieldId} on approval {approvalId} to page {page} in document {documentId} of package {packageId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          page: requestBody.page
          documentId: path.documentId
          packageId: path.packageId
      - text: Set existing field {fieldId} on approval {approvalId} to value {value} (package {packageId}, document {documentId}).
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          value: requestBody.value
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a field to an approval with a chosen field ID
      effect: write
      questions:
      - Can I create an approval field using a field ID I pick myself?
      - Why might creating an approval field by ID behave like an update?
      instructions:
      - text: Create field with ID {fieldId} on approval {approvalId} of document {documentId} in package {packageId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Add a {type} field using my own ID {fieldId} to approval {approvalId}, package {packageId}, document {documentId}.
        slots:
          type: requestBody.type
          fieldId: path.fieldId
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a field from an approval
      effect: destructive
      questions:
      - Can I remove a single field from an approval without deleting the approval?
      - What's the way to drop an unwanted field from a signature approval?
      instructions:
      - text: Delete field {fieldId} from approval {approvalId} on document {documentId} of package {packageId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Remove field {fieldId} off approval {approvalId} in package {packageId}, document {documentId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/approvals/{approvalId}/fields/{fieldId}/conditionalFields'].put
  update:
    x-apievangelist-phrasing:
      intent: Set show/hide conditions on an approval field
      effect: write
      questions:
      - How do I make a field appear only when another field is checked?
      - Can approval fields be enabled or disabled based on conditions?
      instructions:
      - text: Apply conditions {conditions} to field {fieldId} on approval {approvalId}, document {documentId}, package {packageId}.
        slots:
          conditions: requestBody.conditions
          fieldId: path.fieldId
          approvalId: path.approvalId
          documentId: path.documentId
          packageId: path.packageId
      - text: Update the conditional logic on field {fieldId} of approval {approvalId} in package {packageId}, document {documentId}.
        slots:
          fieldId: path.fieldId
          approvalId: path.approvalId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/cs-packages/{packageId}/documents/{documentId}/signers/{signerId}/approvals'].get
  update:
    x-apievangelist-phrasing:
      intent: List approvals a signer can sign on a document
      effect: read
      questions:
      - Which approvals on a document is a particular signer eligible to sign?
      - What signature blocks are waiting for a given signer?
      instructions:
      - text: List signable approvals for signer {signerId} on document {documentId} in package {packageId}.
        slots:
          signerId: path.signerId
          documentId: path.documentId
          packageId: path.packageId
      - text: Show what signer {signerId} still needs to sign in package {packageId}, document {documentId}.
        slots:
          signerId: path.signerId
          packageId: path.packageId
          documentId: path.documentId
      method: generated
      generated: '2026-10-01'