AfterShip · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Aftership Claims API
12 actions
12 updates
phrasing
extends
openapi/aftership-claims-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for AfterShip's API. It is a proposal applied on top of the contract, not a document AfterShip publishes.
What the actions change
x-apievangelist-phrasing
Targets 12
$.info
$.paths['/claims'].get
$.paths['/claims/{id}'].get
$.paths['/claims/{claim_id}'].get
$.paths['/claims/{claim_id}'].patch
$.paths['/claims/{claim_id}/approve'].post
$.paths['/claims/{claim_id}/reject'].post
$.paths['/claims/{claim_id}/cancel'].post
$.paths['/claims/{claim_id}/resolve'].post
$.paths['/claims/{claim_id}/receive'].post
$.paths['/claims/{claim_id}/match-resolution'].post
$.paths['/claims/{claim_id}/process'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Aftership Claims API
version: 1.0.0
extends: openapi/aftership-claims-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 11
- target: $.paths['/claims'].get
update:
x-apievangelist-phrasing:
intent: List shipping protection claims
effect: read
questions:
- How do I see all claims filed against my shipping protection?
- Can I list only the claims tied to one coverage?
instructions:
- text: List my claims.
- text: Show claims filed under coverage {coverage_id}.
slots:
coverage_id: query.coverage_id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a claim by its ID
effect: read
questions:
- Can I look up a claim using its ID from the claims list?
- Where do I find a single claim's summary by ID?
instructions:
- text: Get claim {id}.
slots:
id: path.id
- text: Look up claim {id} by ID.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}'].get
update:
x-apievangelist-phrasing:
intent: Retrieve the full Claim resource
effect: read
questions:
- What does the full Claim resource show for a single claim?
- How do I pull every detail of a claim, including items and status?
instructions:
- text: Retrieve the full Claim resource for {claim_id}.
slots:
claim_id: path.claim_id
- text: Show all details, items and status of claim {claim_id}.
slots:
claim_id: path.claim_id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a claim's note, email or address
effect: write
questions:
- Can I change the contact email on a claim?
- How do I fix the shipping address on an existing claim?
instructions:
- text: Set the contact email on claim {claim_id} to {contact_email}.
slots:
claim_id: path.claim_id
contact_email: requestBody.contact_email
- text: Add the note {note} to claim {claim_id}.
slots:
note: requestBody.note
claim_id: path.claim_id
- text: Change the shipping address on claim {claim_id} to {shipping_address}.
slots:
claim_id: path.claim_id
shipping_address: requestBody.shipping_address
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/approve'].post
update:
x-apievangelist-phrasing:
intent: Approve a claim under review
effect: write
questions:
- How do I approve a claim that's still under review?
- Can I leave an approval note and notify the customer when I accept a claim?
instructions:
- text: Approve claim {claim_id}.
slots:
claim_id: path.claim_id
- text: Approve claim {claim_id} with the note {approval_note} and notify the customer.
slots:
claim_id: path.claim_id
approval_note: requestBody.approval_note
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/reject'].post
update:
x-apievangelist-phrasing:
intent: Reject a claim under review
effect: destructive
questions:
- Can I decline a claim and give the customer a reason?
- Is there a way to permanently reject a claim so it can't be resubmitted?
instructions:
- text: Reject claim {claim_id} because {reject_reason}.
slots:
claim_id: path.claim_id
reject_reason: requestBody.reject_reason
- text: Permanently reject claim {claim_id} with reason {reject_reason}.
slots:
claim_id: path.claim_id
reject_reason: requestBody.reject_reason
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/cancel'].post
update:
x-apievangelist-phrasing:
intent: Cancel an approved or in-process claim
effect: destructive
questions:
- How do I cancel a claim that was already approved?
- Can I stop a claim that is in process and record why?
instructions:
- text: Cancel claim {claim_id} because {cancel_reason}.
slots:
claim_id: path.claim_id
cancel_reason: requestBody.cancel_reason
- text: Withdraw approved claim {claim_id} with the reason {cancel_reason}.
slots:
claim_id: path.claim_id
cancel_reason: requestBody.cancel_reason
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/resolve'].post
update:
x-apievangelist-phrasing:
intent: Mark an in-process claim as resolved
effect: write
questions:
- How do I close out a claim once it has been fully handled?
- Can I resolve an in-process claim and let the customer know?
instructions:
- text: Resolve claim {claim_id} as completed.
slots:
claim_id: path.claim_id
- text: Mark in-process claim {claim_id} resolved and notify the customer.
slots:
claim_id: path.claim_id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/receive'].post
update:
x-apievangelist-phrasing:
intent: Mark returned claim items as received
effect: write
questions:
- How do I record that the items returned for a claim have arrived?
- Does marking claim items received change the claim's main status?
instructions:
- text: Mark the returned items for claim {claim_id} as received.
slots:
claim_id: path.claim_id
- text: Record receipt of claim {claim_id}'s returned goods.
slots:
claim_id: path.claim_id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/match-resolution'].post
update:
x-apievangelist-phrasing:
intent: Check which resolutions a claim supports
effect: read
questions:
- Which resolution methods, like refund or reship, are available for this claim?
- Which stores can be used to process a particular claim?
instructions:
- text: Check which resolution methods claim {claim_id} supports.
slots:
claim_id: path.claim_id
- text: Find the stores that can process claim {claim_id}.
slots:
claim_id: path.claim_id
method: generated
generated: '2026-09-26'
- target: $.paths['/claims/{claim_id}/process'].post
update:
x-apievangelist-phrasing:
intent: Process an approved claim's items
effect: write
questions:
- How do I process an approved claim once I've decided on the items?
- What happens when I process a claim that's been approved?
instructions:
- text: Process approved claim {claim_id} for items {items}.
slots:
claim_id: path.claim_id
items: requestBody.items
- text: Move claim {claim_id} into processing with {items} and notify the customer.
slots:
claim_id: path.claim_id
items: requestBody.items
method: generated
generated: '2026-09-26'