# Send Seats Aero to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "seats-aero",
    "name": "Seats Aero",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/JarrodJS/seats-aero",
    "canonicalUrl": "https://clawhub.ai/JarrodJS/seats-aero",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/seats-aero",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=seats-aero",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/seats-aero"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/seats-aero",
    "downloadUrl": "https://openagent3.xyz/downloads/seats-aero",
    "agentUrl": "https://openagent3.xyz/skills/seats-aero/agent",
    "manifestUrl": "https://openagent3.xyz/skills/seats-aero/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/seats-aero/agent.md"
  }
}
```
## Documentation

### Seats.aero Award Flight Search

Search award flight availability across 24 mileage programs using the seats.aero partner API.

### Setup

Before searching, you need a seats.aero API key:

If the user hasn't provided an API key, prompt them:

"Please provide your seats.aero API key. You can get one at https://seats.aero/partner"


Store the key in conversation context for subsequent requests
All requests require the header: Partner-Authorization: Bearer {api_key}

### 1. Search Routes (/search)

Search cached availability across all mileage programs for a specific origin-destination pair.

### 2. Bulk Availability (/availability)

Explore all availability from a single mileage program, optionally filtered by region.

### 3. Route Discovery (/routes)

Get all routes monitored for a specific mileage program.

### 4. Trip Details (/trips/{id})

Get detailed flight segments and booking links for a specific availability.

### Quick Reference

ItemValueBase URLhttps://seats.aero/partnerapi/Auth HeaderPartner-Authorization: Bearer {key}Date FormatYYYY-MM-DD

### Cabin Codes

Y = Economy
W = Premium Economy
J = Business
F = First

### Regions

North America, South America, Europe, Africa, Middle East, Asia, Oceania

### Supported Programs

aeroplan, alaska, american, aeromexico, azul, copa, delta, emirates,
ethiopian, etihad, finnair, flyingblue, gol, jetblue, lufthansa,
qantas, qatar, sas, saudia, singapore, turkish, united,
virginatlantic, virginaustralia

### Find availability on a specific route

User: "Find business class SFO to Tokyo next month"

Use /search endpoint with:

origin_airport=SFO
destination_airport=NRT,HND (both Tokyo airports)
cabin=J
start_date and end_date for the date range

### Explore program availability

User: "What United awards are available from Europe?"

Use /availability endpoint with:

source=united
origin_region=Europe

### Get booking details

User: "Show me details for that flight"

Use /trips/{id} with the availability ID from previous search
Response includes flight segments, times, and booking links

### Check what routes a program covers

User: "What routes does Aeroplan monitor?"

Use /routes endpoint with source=aeroplan

### /search

ParameterRequiredDescriptionorigin_airportYes3-letter IATA codedestination_airportYes3-letter IATA code(s), comma-separatedcabinNoY, W, J, or F (comma-separated for multiple)start_dateNoYYYY-MM-DDend_dateNoYYYY-MM-DDsourcesNoProgram name(s), comma-separatedonly_directNotrue/falsetakeNoResults per page (default 100)cursorNoPagination cursor

### /availability

ParameterRequiredDescriptionsourceYesSingle program namecabinNoSingle cabin codeorigin_regionNoFilter by origin regiondestination_regionNoFilter by destination regionstart_dateNoYYYY-MM-DDend_dateNoYYYY-MM-DDtakeNoResults per page

### Script Usage

For complex or repeated searches, use the Python helper:

from scripts.seats_api import search_availability, format_results

results = search_availability(
    api_key="your_key",
    origin="SFO",
    destination="NRT",
    start_date="2024-03-01",
    end_date="2024-03-31",
    cabins="J,F"
)
print(format_results(results["data"], cabin="J"))

See scripts/seats_api.py for full API client implementation.

### Availability Object Fields

ID - Use for /trips/{id} lookup
Route - Origin-Destination pair
Date - Flight date
YAvailable, WAvailable, JAvailable, FAvailable - Boolean availability
YMileageCost, etc. - Points required per cabin
YDirects, etc. - Number of direct flights available
Source - Program name
ComputedLastSeen - Data freshness timestamp

### Error Handling

401: Invalid or missing API key
429: Rate limited, wait and retry
404: No results or invalid availability ID

### Tips

Date ranges: Keep to 30-60 days for faster results
Multiple cabins: Search J,F together for premium options
Direct flights: Use only_direct=true to filter connections
Pagination: Use cursor from response for more results
Data freshness: Check ComputedLastSeen - older data may be stale

### Reference Documentation

For complete API specification including all fields and response schemas, see references/api-spec.md.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: JarrodJS
- Version: 0.1.0
## Source health
- Status: healthy
- Source download looks usable.
- Yavira can redirect you to the upstream package for this source.
- Health scope: source
- Reason: direct_download_ok
- Checked at: 2026-05-07T17:22:31.273Z
- Expires at: 2026-05-14T17:22:31.273Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/seats-aero)
- [Send to Agent page](https://openagent3.xyz/skills/seats-aero/agent)
- [JSON manifest](https://openagent3.xyz/skills/seats-aero/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/seats-aero/agent.md)
- [Download page](https://openagent3.xyz/downloads/seats-aero)