# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Approvals Requests API version: 1.0.0 extends: openapi/conga-requests-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: 28 - target: $.paths['/v1/requests/attachments'].post update: x-apievangelist-phrasing: intent: Get attachments for several approval requests effect: read questions: - What files are attached to these approval requests? - Can I pull the attachments for a batch of approval request IDs at once? instructions: - text: Fetch the attachments for the approval requests I'm listing. - text: Show me every file attached to this set of approval requests. method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/bulk-approve'].post update: x-apievangelist-phrasing: intent: Approve several approval requests at once effect: write questions: - Can I approve a whole batch of pending approval requests in one call? - What happens to the approval process after I bulk-approve requests? instructions: - text: Bulk-approve all of the approval requests on my list. - text: Approve these pending requests together and move each process to its next approver. method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/bulk-reassign'].post update: x-apievangelist-phrasing: intent: Reassign several approval requests at once effect: write questions: - Is there a way to hand off many approval requests to someone else in one go? - Can I bulk-reassign approval requests when an approver is out? instructions: - text: Bulk-reassign these approval requests to a new approver. - text: Move all of the listed approval requests off my queue in one batch. method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/bulk-reject'].post update: x-apievangelist-phrasing: intent: Reject several approval requests at once effect: write questions: - Can I reject a batch of approval requests in a single call? - How do I decline many approval requests together in Conga Approvals? instructions: - text: Bulk-reject every approval request on this list. - text: Decline all of these pending approval requests at once. method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/bulk/{actionType}'].post update: x-apievangelist-phrasing: intent: Run an action on many business objects in bulk effect: write questions: - Can I apply one approval action type across many business objects in bulk? - Which bulk action types can be run against business objects? instructions: - text: Run the {actionType} action on these business objects in bulk. slots: actionType: path.actionType - text: Bulk-process the selected business objects with action type {actionType}. slots: actionType: path.actionType method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/check-required'].post update: x-apievangelist-phrasing: intent: Check which objects require approval effect: read questions: - Does this quote and its line items need approval before I continue? - Which header and child objects require approval right now? instructions: - text: Check whether header object {header} and its children need approval. slots: header: requestBody.HeaderObject - text: List which of these child objects {children} require approval, synchronously. slots: children: requestBody.ChildObjects method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/check-required-async'].post update: x-apievangelist-phrasing: intent: Check asynchronously which objects need approval effect: read questions: - Can I run the approval-required check asynchronously for a large object? - Is there a background version of the check for objects requiring approval? instructions: - text: Start an async check of whether header object {header} needs approval. slots: header: requestBody.HeaderObject - text: Queue an asynchronous approval-required check for child objects {children}. slots: children: requestBody.ChildObjects method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/comments'].put update: x-apievangelist-phrasing: intent: Add a comment to approval requests effect: write questions: - Can I leave a comment on an approval request without approving or rejecting it? - Is it possible to attach files along with a comment on approval requests? instructions: - text: Add the comment "{comments}" to approval requests {requestIds}. slots: comments: requestBody.Comments requestIds: requestBody.ApprovalRequestIds - text: Comment "{comments}" on request {requestIds} and attach files {attachmentIds}. slots: comments: requestBody.Comments requestIds: requestBody.ApprovalRequestIds attachmentIds: requestBody.AttachmentIds method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/process-escalation-reminders'].post update: x-apievangelist-phrasing: intent: Trigger due approval reminders and escalations effect: write questions: - How do I fire off all the approval reminders and escalations that are due? - Can I manually run the escalation reminder job for overdue approvals? instructions: - text: Process every approval reminder and escalation that is currently due. - text: Send the overdue approval reminder emails now. method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/rfi'].put update: x-apievangelist-phrasing: intent: Request more information on an approval request effect: write questions: - Can I ask someone for more information before deciding on an approval request? - Who can receive a request for information on an approval, a user or a group? instructions: - text: Send a request for information on approval {requestIds} to {recipient} asking "{comments}". slots: requestIds: requestBody.ApprovalRequestIds recipient: requestBody.RFIRecipientId comments: requestBody.Comments - text: Ask {recipient} (a {recipientType}) for details on approval requests {requestIds}. slots: recipient: requestBody.RFIRecipientId recipientType: requestBody.RFIRecipientType requestIds: requestBody.ApprovalRequestIds method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/submit'].post update: x-apievangelist-phrasing: intent: Submit an object for approval effect: write questions: - How do I send a quote or opportunity into the approval process? - Can I submit an object for approval using its external ID instead? instructions: - text: Submit {objectType} {objectId} for approval. slots: objectType: requestBody.ObjectType objectId: requestBody.ObjectId - text: Submit {objectType} {objectId} for approval with the comment "{comments}". slots: objectType: requestBody.ObjectType objectId: requestBody.ObjectId comments: requestBody.Comments method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/submit-async'].post update: x-apievangelist-phrasing: intent: Submit many objects for approval asynchronously effect: write questions: - Can I submit a large batch of objects for approval in the background? - What's the async way to kick off approvals for lots of records at once? instructions: - text: 'Submit these approval requests asynchronously: {requests}.' slots: requests: requestBody.Requests - text: Queue a background approval submission for the records in {requests}. slots: requests: requestBody.Requests method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{correlationId}/status'].get update: x-apievangelist-phrasing: intent: Check status of an async approval submission effect: read questions: - Did my asynchronous approval submission finish yet? - Where do I check progress using the correlation ID from an async submit? instructions: - text: Get the status of the approval submission with correlation ID {correlationId}. slots: correlationId: path.correlationId - text: Check whether async approval job {correlationId} has completed. slots: correlationId: path.correlationId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/adhoc-approver'].put update: x-apievangelist-phrasing: intent: Add an ad hoc approver to a running approval effect: write questions: - Can I insert an extra approver into an approval cycle that's already running? - Where in the step order can an ad hoc approver be added? instructions: - text: Add ad hoc approver step {step} to approval request {id} at position {position}. slots: step: requestBody.NewStep id: path.id position: requestBody.NewStepPosition - text: Insert a new approver {step} {position} reference request {ref} on approval {id}. slots: step: requestBody.NewStep position: requestBody.NewStepPosition ref: requestBody.ReferenceRequestId id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/adhoc-approver'].delete update: x-apievangelist-phrasing: intent: Remove an ad hoc approver from an approval effect: destructive questions: - Can I take back an ad hoc approver I added to a rule-based approval? - Is it possible to remove an extra approver from a running approval cycle? instructions: - text: Remove the ad hoc approver from approval request {id}. slots: id: path.id - text: Delete the extra approver I added on request {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/approve'].post update: x-apievangelist-phrasing: intent: Approve a single approval request effect: write questions: - How do I approve one approval request and add a comment? - What happens next after I approve a single request in the cycle? instructions: - text: Approve approval request {id}. slots: id: path.id - text: Approve request {id} with the comment "{comments}". slots: id: path.id comments: requestBody.Comments method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/escalate'].post update: x-apievangelist-phrasing: intent: Escalate an approval request effect: write questions: - Can I push a stalled approval request up to the escalation level? - Who does an escalated approval request go to? instructions: - text: Escalate approval request {id}. slots: id: path.id - text: Raise request {id} to its configured escalation approver. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/reassign'].post update: x-apievangelist-phrasing: intent: Reassign one approval request effect: write questions: - Can I hand a single approval request to a different user or group? - What details do I need to reassign one approval request? instructions: - text: Reassign approval request {id} to {assigneeType} {assigneeId}. slots: id: path.id assigneeType: requestBody.AssigneeType assigneeId: requestBody.AssigneeId - text: Give request {id} to assignee {assigneeId} ({assigneeType}) noting "{comments}". slots: id: path.id assigneeId: requestBody.AssigneeId assigneeType: requestBody.AssigneeType comments: requestBody.Comments method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{id}/reject'].post update: x-apievangelist-phrasing: intent: Reject a single approval request effect: write questions: - How do I reject one approval request with a reason? - Can a rejection be recorded as coming from an email response? instructions: - text: Reject approval request {id}. slots: id: path.id - text: Reject request {id} with the comment "{comments}". slots: id: path.id comments: requestBody.Comments method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}'].get update: x-apievangelist-phrasing: intent: Get the approval status of a record effect: read questions: - Is this opportunity still in preview or has it been submitted for approval? - What approval status does a given record currently have? instructions: - text: Check the approval status of {objectType} {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: Tell me whether {objectType} with external ID {objectId} is previewed or submitted. slots: objectType: path.objectType objectId: path.objectId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}/child/{childObjectType}'].get update: x-apievangelist-phrasing: intent: Get approval status of a record's child objects effect: read questions: - Have the line items under this quote been submitted for approval? - Can I check the approval status of child objects of a record? instructions: - text: Check the approval status of {childType} children of {objectType} {objectId}. slots: childType: path.childObjectType objectType: path.objectType objectId: path.objectId - text: Report whether the {childType} records under {objectType} {objectId} are previewed or submitted. slots: childType: path.childObjectType objectType: path.objectType objectId: path.objectId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}/comments'].get update: x-apievangelist-phrasing: intent: List comments on a record's approval requests effect: read questions: - What comments have approvers left on this record's approvals? - Can I sort approval comments oldest-first or limit them to one request? instructions: - text: Show the approval comments on {objectType} {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: List comments for request {requestId} on {objectType} {objectId} in {order} order. slots: requestId: query.requestId objectType: path.objectType objectId: path.objectId order: query.commentsOrder method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}/preview'].get update: x-apievangelist-phrasing: intent: Preview which approvals a record would trigger effect: read questions: - Which approval processes would apply if I submitted this opportunity? - Can I see the approvers a record would need before submitting it? instructions: - text: Preview the approvals for {objectType} {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: Show me who would need to approve {objectType} {objectId} before I submit it. slots: objectType: path.objectType objectId: path.objectId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}/recall'].post update: x-apievangelist-phrasing: intent: Recall a record's approval cycle effect: destructive questions: - How do I cancel an approval cycle I already submitted? - Will approvers be notified when I recall an approval? instructions: - text: Recall the approval cycle on {objectType} {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: Cancel approvals for {objectType} {objectId} with the note "{comments}". slots: objectType: path.objectType objectId: path.objectId comments: requestBody.Comments method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{objectType}/{objectId}/{assigneeId}'].get update: x-apievangelist-phrasing: intent: List a record's approval requests for one assignee effect: read questions: - Which approval requests on this record are assigned to a particular person? - What does a specific approver have pending on this object? instructions: - text: List approval requests on {objectType} {objectId} assigned to {assigneeId}. slots: objectType: path.objectType objectId: path.objectId assigneeId: path.assigneeId - text: Show what assignee {assigneeId} must approve on {objectType} {objectId}. slots: assigneeId: path.assigneeId objectType: path.objectType objectId: path.objectId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{requestId}'].get update: x-apievangelist-phrasing: intent: Get an approval request by ID effect: read questions: - What are the details of a specific approval request? - Can I look up one approval request directly by its request ID? instructions: - text: Get approval request {requestId}. slots: requestId: path.requestId - text: Show me the full details of approval request {requestId}. slots: requestId: path.requestId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{requestId}/assign-owner'].put update: x-apievangelist-phrasing: intent: Take ownership of a queued approval request effect: write questions: - Can I claim a queued approval request so it's assigned to me? - How do I take ownership of an approval sitting in a queue? instructions: - text: Assign queued approval request {requestId} to me. slots: requestId: path.requestId - text: Claim ownership of request {requestId} from the queue. slots: requestId: path.requestId method: generated generated: '2026-10-01' - target: $.paths['/v1/requests/{requestId}/consolidation-info'].get update: x-apievangelist-phrasing: intent: Get consolidation details for an approval request effect: read questions: - Which approval requests were consolidated together with this one? - Can I see the consolidation info for a given approval request? instructions: - text: Get the consolidation info for approval request {requestId}. slots: requestId: path.requestId - text: List the requests consolidated with approval {requestId}. slots: requestId: path.requestId method: generated generated: '2026-10-01'