This commit is contained in:
a2a-platform
2026-06-27 01:04:02 +00:00
commit baecd6f6c9
25 changed files with 294526 additions and 0 deletions

11
README.md Normal file
View File

@@ -0,0 +1,11 @@
# shipengine-openapi-agent
Generated A2APack agent for ShipEngine API.
- Source OpenAPI: https://raw.githubusercontent.com/ShipEngine/shipengine-openapi/master/openapi.json
- Generated operations: 97
- Main skill: `auto`
- Routing mode: DeepAgents subagents across 20 route groups
The generated code is intentionally editable. Tune prompts, operation
grouping, auth names, and safety policy before publishing serious agents.

13
a2a.yaml Normal file
View File

@@ -0,0 +1,13 @@
name: shipengine-openapi-agent
version: 1.1.202604070904
entrypoint: agent:ShipengineOpenapiAgent
description: Shipping and logistics API for labels, rates, tracking, address validation,
and carrier integrations.
runtime:
resources:
cpu: 200m
memory: 512Mi
egress:
allow_hosts:
- api.shipengine.com
deny_internet_by_default: true

434
agent.py Normal file

File diff suppressed because one or more lines are too long

292861
openapi.json Normal file

File diff suppressed because one or more lines are too long

7
requirements.txt Normal file
View File

@@ -0,0 +1,7 @@
# a2a-pack is installed by the platform base image.
deepagents>=0.5.0
langchain>=0.3
langchain-openai>=0.2
langchain-core>=0.3
langgraph>=0.6
httpx>=0.27

64
skills/account/SKILL.md Normal file
View File

@@ -0,0 +1,64 @@
---
name: account-routes
description: Handle 6 OpenAPI operation(s) under /v1/account/settings for the account route group.
---
# account API Routes
Handle 6 OpenAPI operation(s) under /v1/account/settings for the account route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_account_settings
- Operation ID: `list_account_settings`
- Route: `GET /v1/account/settings`
- Mode: READ
- Summary: List Account Settings
### list_account_images
- Operation ID: `list_account_images`
- Route: `GET /v1/account/settings/images`
- Mode: READ
- Summary: List Account Images
### create_account_image
- Operation ID: `create_account_image`
- Route: `POST /v1/account/settings/images`
- Mode: WRITE
- Summary: Create an Account Image
- Body: JSON request body accepted.
### get_account_settings_images_by_id
- Operation ID: `get_account_settings_images_by_id`
- Route: `GET /v1/account/settings/images/{label_image_id}`
- Mode: READ
- Summary: Get Account Image By ID
- Parameters:
- `label_image_id` in `path` required
### update_account_settings_images_by_id
- Operation ID: `update_account_settings_images_by_id`
- Route: `PUT /v1/account/settings/images/{label_image_id}`
- Mode: WRITE
- Summary: Update Account Image By ID
- Parameters:
- `label_image_id` in `path` required
- Body: JSON request body accepted.
### delete_account_image_by_id
- Operation ID: `delete_account_image_by_id`
- Route: `DELETE /v1/account/settings/images/{label_image_id}`
- Mode: WRITE
- Summary: Delete Account Image By Id
- Parameters:
- `label_image_id` in `path` required

30
skills/addresses/SKILL.md Normal file
View File

@@ -0,0 +1,30 @@
---
name: addresses-routes
description: Handle 2 OpenAPI operation(s) under /v1/addresses for the addresses route group.
---
# addresses API Routes
Handle 2 OpenAPI operation(s) under /v1/addresses for the addresses route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### parse_address
- Operation ID: `parse_address`
- Route: `PUT /v1/addresses/recognize`
- Mode: WRITE
- Summary: Parse an address
- Body: JSON request body accepted.
### validate_address
- Operation ID: `validate_address`
- Route: `POST /v1/addresses/validate`
- Mode: WRITE
- Summary: Validate An Address
- Body: JSON request body accepted.

117
skills/batches/SKILL.md Normal file
View File

@@ -0,0 +1,117 @@
---
name: batches-routes
description: Handle 10 OpenAPI operation(s) under /v1/batches for the batches route group.
---
# batches API Routes
Handle 10 OpenAPI operation(s) under /v1/batches for the batches route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_batches
- Operation ID: `list_batches`
- Route: `GET /v1/batches`
- Mode: READ
- Summary: List Batches
- Parameters:
- `status` in `query`
- `page` in `query`
- `page_size` in `query`
- `sort_dir` in `query`
- `batch_number` in `query`
- `created_at_start` in `query`
- `created_at_end` in `query`
- `processed_at_start` in `query`
- `processed_at_end` in `query`
- `sort_by` in `query`
### create_batch
- Operation ID: `create_batch`
- Route: `POST /v1/batches`
- Mode: WRITE
- Summary: Create A Batch
- Body: JSON request body accepted.
### get_batch_by_external_id
- Operation ID: `get_batch_by_external_id`
- Route: `GET /v1/batches/external_batch_id/{external_batch_id}`
- Mode: READ
- Summary: Get Batch By External ID
- Parameters:
- `external_batch_id` in `path` required
### delete_batch
- Operation ID: `delete_batch`
- Route: `DELETE /v1/batches/{batch_id}`
- Mode: WRITE
- Summary: Delete Batch By Id
- Parameters:
- `batch_id` in `path` required
### get_batch_by_id
- Operation ID: `get_batch_by_id`
- Route: `GET /v1/batches/{batch_id}`
- Mode: READ
- Summary: Get Batch By ID
- Parameters:
- `batch_id` in `path` required
### update_batch
- Operation ID: `update_batch`
- Route: `PUT /v1/batches/{batch_id}`
- Mode: WRITE
- Summary: Update Batch By Id
- Parameters:
- `batch_id` in `path` required
### add_to_batch
- Operation ID: `add_to_batch`
- Route: `POST /v1/batches/{batch_id}/add`
- Mode: WRITE
- Summary: Add to a Batch
- Parameters:
- `batch_id` in `path` required
- Body: JSON request body accepted.
### list_batch_errors
- Operation ID: `list_batch_errors`
- Route: `GET /v1/batches/{batch_id}/errors`
- Mode: READ
- Summary: Get Batch Errors
- Parameters:
- `batch_id` in `path` required
- `page` in `query`
- `pagesize` in `query`
### process_batch
- Operation ID: `process_batch`
- Route: `POST /v1/batches/{batch_id}/process/labels`
- Mode: WRITE
- Summary: Process Batch ID Labels
- Parameters:
- `batch_id` in `path` required
- Body: JSON request body accepted.
### remove_from_batch
- Operation ID: `remove_from_batch`
- Route: `POST /v1/batches/{batch_id}/remove`
- Mode: WRITE
- Summary: Remove From Batch
- Parameters:
- `batch_id` in `path` required
- Body: JSON request body accepted.

76
skills/carriers/SKILL.md Normal file
View File

@@ -0,0 +1,76 @@
---
name: carriers-routes
description: Handle 7 OpenAPI operation(s) under /v1/carriers for the carriers route group.
---
# carriers API Routes
Handle 7 OpenAPI operation(s) under /v1/carriers for the carriers route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_carriers
- Operation ID: `list_carriers`
- Route: `GET /v1/carriers`
- Mode: READ
- Summary: List Carriers
### get_carrier_by_id
- Operation ID: `get_carrier_by_id`
- Route: `GET /v1/carriers/{carrier_id}`
- Mode: READ
- Summary: Get Carrier By ID
- Parameters:
- `carrier_id` in `path` required
### disconnect_carrier_by_id
- Operation ID: `disconnect_carrier_by_id`
- Route: `DELETE /v1/carriers/{carrier_id}`
- Mode: WRITE
- Summary: Disconnect Carrier by ID
- Parameters:
- `carrier_id` in `path` required
### add_funds_to_carrier
- Operation ID: `add_funds_to_carrier`
- Route: `PUT /v1/carriers/{carrier_id}/add_funds`
- Mode: WRITE
- Summary: Add Funds To Carrier
- Parameters:
- `carrier_id` in `path` required
- Body: JSON request body accepted.
### get_carrier_options
- Operation ID: `get_carrier_options`
- Route: `GET /v1/carriers/{carrier_id}/options`
- Mode: READ
- Summary: Get Carrier Options
- Parameters:
- `carrier_id` in `path` required
### list_carrier_package_types
- Operation ID: `list_carrier_package_types`
- Route: `GET /v1/carriers/{carrier_id}/packages`
- Mode: READ
- Summary: List Carrier Package Types
- Parameters:
- `carrier_id` in `path` required
### list_carrier_services
- Operation ID: `list_carrier_services`
- Route: `GET /v1/carriers/{carrier_id}/services`
- Mode: READ
- Summary: List Carrier Services
- Parameters:
- `carrier_id` in `path` required

View File

@@ -0,0 +1,70 @@
---
name: connections-routes
description: Handle 6 OpenAPI operation(s) under /v1/connections for the connections route group.
---
# connections API Routes
Handle 6 OpenAPI operation(s) under /v1/connections for the connections route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### connect_carrier
- Operation ID: `connect_carrier`
- Route: `POST /v1/connections/carriers/{carrier_name}`
- Mode: WRITE
- Summary: Connect a carrier account
- Parameters:
- `carrier_name` in `path` required
- Body: JSON request body accepted.
### disconnect_carrier
- Operation ID: `disconnect_carrier`
- Route: `DELETE /v1/connections/carriers/{carrier_name}/{carrier_id}`
- Mode: WRITE
- Summary: Disconnect a carrier
- Parameters:
- `carrier_name` in `path` required
- `carrier_id` in `path` required
### get_carrier_settings
- Operation ID: `get_carrier_settings`
- Route: `GET /v1/connections/carriers/{carrier_name}/{carrier_id}/settings`
- Mode: READ
- Summary: Get carrier settings
- Parameters:
- `carrier_name` in `path` required
- `carrier_id` in `path` required
### update_carrier_settings
- Operation ID: `update_carrier_settings`
- Route: `PUT /v1/connections/carriers/{carrier_name}/{carrier_id}/settings`
- Mode: WRITE
- Summary: Update carrier settings
- Parameters:
- `carrier_name` in `path` required
- `carrier_id` in `path` required
- Body: JSON request body accepted.
### disconnect_insurer
- Operation ID: `disconnect_insurer`
- Route: `DELETE /v1/connections/insurance/shipsurance`
- Mode: WRITE
- Summary: Disconnect a Shipsurance Account
### connect_insurer
- Operation ID: `connect_insurer`
- Route: `POST /v1/connections/insurance/shipsurance`
- Mode: WRITE
- Summary: Connect a Shipsurance Account
- Body: JSON request body accepted.

22
skills/documents/SKILL.md Normal file
View File

@@ -0,0 +1,22 @@
---
name: documents-routes
description: Handle 1 OpenAPI operation(s) under /v1/documents/combined_labels for the documents route group.
---
# documents API Routes
Handle 1 OpenAPI operation(s) under /v1/documents/combined_labels for the documents route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### create_combined_label_document
- Operation ID: `create_combined_label_document`
- Route: `POST /v1/documents/combined_labels`
- Mode: WRITE
- Summary: Created Combined Label Document
- Body: JSON request body accepted.

27
skills/downloads/SKILL.md Normal file
View File

@@ -0,0 +1,27 @@
---
name: downloads-routes
description: Handle 1 OpenAPI operation(s) under /v1/downloads/{dir}/{subdir}/{filename} for the downloads route group.
---
# downloads API Routes
Handle 1 OpenAPI operation(s) under /v1/downloads/{dir}/{subdir}/{filename} for the downloads route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### download_file
- Operation ID: `download_file`
- Route: `GET /v1/downloads/{dir}/{subdir}/{filename}`
- Mode: READ
- Summary: Download File
- Parameters:
- `subdir` in `path` required
- `filename` in `path` required
- `dir` in `path` required
- `download` in `query`
- `rotation` in `query`

View File

@@ -0,0 +1,57 @@
---
name: environment-routes
description: Handle 5 OpenAPI operation(s) under /v1/environment/webhooks for the environment route group.
---
# environment API Routes
Handle 5 OpenAPI operation(s) under /v1/environment/webhooks for the environment route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_webhooks
- Operation ID: `list_webhooks`
- Route: `GET /v1/environment/webhooks`
- Mode: READ
- Summary: List Webhooks
### create_webhook
- Operation ID: `create_webhook`
- Route: `POST /v1/environment/webhooks`
- Mode: WRITE
- Summary: Create a Webhook
- Body: JSON request body accepted.
### get_webhook_by_id
- Operation ID: `get_webhook_by_id`
- Route: `GET /v1/environment/webhooks/{webhook_id}`
- Mode: READ
- Summary: Get Webhook By ID
- Parameters:
- `webhook_id` in `path` required
### update_webhook
- Operation ID: `update_webhook`
- Route: `PUT /v1/environment/webhooks/{webhook_id}`
- Mode: WRITE
- Summary: Update a Webhook
- Parameters:
- `webhook_id` in `path` required
- Body: JSON request body accepted.
### delete_webhook
- Operation ID: `delete_webhook`
- Route: `DELETE /v1/environment/webhooks/{webhook_id}`
- Mode: WRITE
- Summary: Delete Webhook By ID
- Parameters:
- `webhook_id` in `path` required

29
skills/insurance/SKILL.md Normal file
View File

@@ -0,0 +1,29 @@
---
name: insurance-routes
description: Handle 2 OpenAPI operation(s) under /v1/insurance/shipsurance for the insurance route group.
---
# insurance API Routes
Handle 2 OpenAPI operation(s) under /v1/insurance/shipsurance for the insurance route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### add_funds_to_insurance
- Operation ID: `add_funds_to_insurance`
- Route: `PATCH /v1/insurance/shipsurance/add_funds`
- Mode: WRITE
- Summary: Add Funds To Insurance
- Body: JSON request body accepted.
### get_insurance_balance
- Operation ID: `get_insurance_balance`
- Route: `GET /v1/insurance/shipsurance/balance`
- Mode: READ
- Summary: Get Insurance Funds Balance

132
skills/labels/SKILL.md Normal file
View File

@@ -0,0 +1,132 @@
---
name: labels-routes
description: Handle 11 OpenAPI operation(s) under /v1/labels for the labels route group.
---
# labels API Routes
Handle 11 OpenAPI operation(s) under /v1/labels for the labels route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_labels
- Operation ID: `list_labels`
- Route: `GET /v1/labels`
- Mode: READ
- Summary: List labels
- Parameters:
- `label_status` in `query`
- `service_code` in `query`
- `carrier_id` in `query`
- `tracking_number` in `query`
- `batch_id` in `query`
- `rate_id` in `query`
- `shipment_id` in `query`
- `warehouse_id` in `query`
- `created_at_start` in `query`
- `created_at_end` in `query`
- `refund_status` in `query`
- `page` in `query`
- `page_size` in `query`
- `sort_dir` in `query`
- `sort_by` in `query`
### create_label
- Operation ID: `create_label`
- Route: `POST /v1/labels`
- Mode: WRITE
- Summary: Purchase Label
- Body: JSON request body accepted.
### get_label_by_external_shipment_id
- Operation ID: `get_label_by_external_shipment_id`
- Route: `GET /v1/labels/external_shipment_id/{external_shipment_id}`
- Mode: READ
- Summary: Get Label By External Shipment ID
- Parameters:
- `external_shipment_id` in `path` required
- `label_download_type` in `query`
### create_label_from_rate
- Operation ID: `create_label_from_rate`
- Route: `POST /v1/labels/rates/{rate_id}`
- Mode: WRITE
- Summary: Purchase Label with Rate ID
- Parameters:
- `rate_id` in `path` required
- Body: JSON request body accepted.
### create_label_from_rate_shopper
- Operation ID: `create_label_from_rate_shopper`
- Route: `POST /v1/labels/rate_shopper_id/{rate_shopper_id}`
- Mode: WRITE
- Summary: Purchase Label from Rate Shopper
- Parameters:
- `rate_shopper_id` in `path` required
- Body: JSON request body accepted.
### create_label_from_shipment
- Operation ID: `create_label_from_shipment`
- Route: `POST /v1/labels/shipment/{shipment_id}`
- Mode: WRITE
- Summary: Purchase Label with Shipment ID
- Parameters:
- `shipment_id` in `path` required
- Body: JSON request body accepted.
### get_label_by_id
- Operation ID: `get_label_by_id`
- Route: `GET /v1/labels/{label_id}`
- Mode: READ
- Summary: Get Label By ID
- Parameters:
- `label_id` in `path` required
- `label_download_type` in `query`
### create_return_label
- Operation ID: `create_return_label`
- Route: `POST /v1/labels/{label_id}/return`
- Mode: WRITE
- Summary: Create a return label
- Parameters:
- `label_id` in `path` required
- Body: JSON request body accepted.
### get_tracking_log_from_label
- Operation ID: `get_tracking_log_from_label`
- Route: `GET /v1/labels/{label_id}/track`
- Mode: READ
- Summary: Get Label Tracking Information
- Parameters:
- `label_id` in `path` required
### void_label
- Operation ID: `void_label`
- Route: `PUT /v1/labels/{label_id}/void`
- Mode: WRITE
- Summary: Void a Label By ID
- Parameters:
- `label_id` in `path` required
### cancel_label_refund
- Operation ID: `cancel_label_refund`
- Route: `POST /v1/labels/{label_id}/cancel_refund`
- Mode: WRITE
- Summary: Cancel a label refund request
- Parameters:
- `label_id` in `path` required

57
skills/manifests/SKILL.md Normal file
View File

@@ -0,0 +1,57 @@
---
name: manifests-routes
description: Handle 4 OpenAPI operation(s) under /v1/manifests for the manifests route group.
---
# manifests API Routes
Handle 4 OpenAPI operation(s) under /v1/manifests for the manifests route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_manifests
- Operation ID: `list_manifests`
- Route: `GET /v1/manifests`
- Mode: READ
- Summary: List Manifests
- Parameters:
- `warehouse_id` in `query`
- `ship_date_start` in `query`
- `ship_date_end` in `query`
- `created_at_start` in `query`
- `created_at_end` in `query`
- `carrier_id` in `query`
- `page` in `query`
- `page_size` in `query`
- `label_ids` in `query`
### create_manifest
- Operation ID: `create_manifest`
- Route: `POST /v1/manifests`
- Mode: WRITE
- Summary: Create Manifest
- Body: JSON request body accepted.
### get_manifest_by_id
- Operation ID: `get_manifest_by_id`
- Route: `GET /v1/manifests/{manifest_id}`
- Mode: READ
- Summary: Get Manifest By Id
- Parameters:
- `manifest_id` in `path` required
### get_manifest_request_by_id
- Operation ID: `get_manifest_request_by_id`
- Route: `GET /v1/manifests/requests/{manifest_request_id}`
- Mode: READ
- Summary: Get Manifest Request By Id
- Parameters:
- `manifest_request_id` in `path` required

57
skills/packages/SKILL.md Normal file
View File

@@ -0,0 +1,57 @@
---
name: packages-routes
description: Handle 5 OpenAPI operation(s) under /v1/packages for the packages route group.
---
# packages API Routes
Handle 5 OpenAPI operation(s) under /v1/packages for the packages route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_package_types
- Operation ID: `list_package_types`
- Route: `GET /v1/packages`
- Mode: READ
- Summary: List Custom Package Types
### create_package_type
- Operation ID: `create_package_type`
- Route: `POST /v1/packages`
- Mode: WRITE
- Summary: Create Custom Package Type
- Body: JSON request body accepted.
### get_package_type_by_id
- Operation ID: `get_package_type_by_id`
- Route: `GET /v1/packages/{package_id}`
- Mode: READ
- Summary: Get Custom Package Type By ID
- Parameters:
- `package_id` in `path` required
### update_package_type
- Operation ID: `update_package_type`
- Route: `PUT /v1/packages/{package_id}`
- Mode: WRITE
- Summary: Update Custom Package Type By ID
- Parameters:
- `package_id` in `path` required
- Body: JSON request body accepted.
### delete_package_type
- Operation ID: `delete_package_type`
- Route: `DELETE /v1/packages/{package_id}`
- Mode: WRITE
- Summary: Delete A Custom Package By ID
- Parameters:
- `package_id` in `path` required

54
skills/pickups/SKILL.md Normal file
View File

@@ -0,0 +1,54 @@
---
name: pickups-routes
description: Handle 4 OpenAPI operation(s) under /v1/pickups for the pickups route group.
---
# pickups API Routes
Handle 4 OpenAPI operation(s) under /v1/pickups for the pickups route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_scheduled_pickups
- Operation ID: `list_scheduled_pickups`
- Route: `GET /v1/pickups`
- Mode: READ
- Summary: List Scheduled Pickups
- Parameters:
- `carrier_id` in `query`
- `warehouse_id` in `query`
- `created_at_start` in `query`
- `created_at_end` in `query`
- `page` in `query`
- `page_size` in `query`
### schedule_pickup
- Operation ID: `schedule_pickup`
- Route: `POST /v1/pickups`
- Mode: WRITE
- Summary: Schedule a Pickup
- Body: JSON request body accepted.
### get_pickup_by_id
- Operation ID: `get_pickup_by_id`
- Route: `GET /v1/pickups/{pickup_id}`
- Mode: READ
- Summary: Get Pickup By ID
- Parameters:
- `pickup_id` in `path` required
### delete_scheduled_pickup
- Operation ID: `delete_scheduled_pickup`
- Route: `DELETE /v1/pickups/{pickup_id}`
- Mode: WRITE
- Summary: Delete a Scheduled Pickup
- Parameters:
- `pickup_id` in `path` required

47
skills/rates/SKILL.md Normal file
View File

@@ -0,0 +1,47 @@
---
name: rates-routes
description: Handle 4 OpenAPI operation(s) under /v1/rates for the rates route group.
---
# rates API Routes
Handle 4 OpenAPI operation(s) under /v1/rates for the rates route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### calculate_rates
- Operation ID: `calculate_rates`
- Route: `POST /v1/rates`
- Mode: WRITE
- Summary: Get Shipping Rates
- Body: JSON request body accepted.
### compare_bulk_rates
- Operation ID: `compare_bulk_rates`
- Route: `POST /v1/rates/bulk`
- Mode: WRITE
- Summary: Get Bulk Rates
- Body: JSON request body accepted.
### estimate_rates
- Operation ID: `estimate_rates`
- Route: `POST /v1/rates/estimate`
- Mode: WRITE
- Summary: Estimate Rates
- Body: JSON request body accepted.
### get_rate_by_id
- Operation ID: `get_rate_by_id`
- Route: `GET /v1/rates/{rate_id}`
- Mode: READ
- Summary: Get Rate By ID
- Parameters:
- `rate_id` in `path` required

View File

@@ -0,0 +1,33 @@
---
name: service-points-routes
description: Handle 2 OpenAPI operation(s) under /v1/service_points for the service points route group.
---
# service points API Routes
Handle 2 OpenAPI operation(s) under /v1/service_points for the service points route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### service_points_list
- Operation ID: `service_points_list`
- Route: `POST /v1/service_points/list`
- Mode: WRITE
- Summary: List Service Points
- Body: JSON request body accepted.
### service_points_get_by_id
- Operation ID: `service_points_get_by_id`
- Route: `GET /v1/service_points/{carrier_code}/{country_code}/{service_point_id}`
- Mode: READ
- Summary: Get Service Point By ID
- Parameters:
- `carrier_code` in `path` required
- `country_code` in `path` required
- `service_point_id` in `path` required

134
skills/shipments/SKILL.md Normal file
View File

@@ -0,0 +1,134 @@
---
name: shipments-routes
description: Handle 12 OpenAPI operation(s) under /v1/shipments for the shipments route group.
---
# shipments API Routes
Handle 12 OpenAPI operation(s) under /v1/shipments for the shipments route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_shipments
- Operation ID: `list_shipments`
- Route: `GET /v1/shipments`
- Mode: READ
- Summary: List Shipments
- Parameters:
- `shipment_status` in `query`
- `batch_id` in `query`
- `tag` in `query`
- `created_at_start` in `query`
- `created_at_end` in `query`
- `modified_at_start` in `query`
- `modified_at_end` in `query`
- `page` in `query`
- `page_size` in `query`
- `sales_order_id` in `query`
- `sort_dir` in `query`
- `sort_by` in `query`
### create_shipments
- Operation ID: `create_shipments`
- Route: `POST /v1/shipments`
- Mode: WRITE
- Summary: Create Shipments
- Body: JSON request body accepted.
### get_shipment_by_external_id
- Operation ID: `get_shipment_by_external_id`
- Route: `GET /v1/shipments/external_shipment_id/{external_shipment_id}`
- Mode: READ
- Summary: Get Shipment By External ID
- Parameters:
- `external_shipment_id` in `path` required
### parse_shipment
- Operation ID: `parse_shipment`
- Route: `PUT /v1/shipments/recognize`
- Mode: WRITE
- Summary: Parse shipping info
- Body: JSON request body accepted.
### get_shipment_by_id
- Operation ID: `get_shipment_by_id`
- Route: `GET /v1/shipments/{shipment_id}`
- Mode: READ
- Summary: Get Shipment By ID
- Parameters:
- `shipment_id` in `path` required
### update_shipment
- Operation ID: `update_shipment`
- Route: `PUT /v1/shipments/{shipment_id}`
- Mode: WRITE
- Summary: Update Shipment By ID
- Parameters:
- `shipment_id` in `path` required
- Body: JSON request body accepted.
### cancel_shipments
- Operation ID: `cancel_shipments`
- Route: `PUT /v1/shipments/{shipment_id}/cancel`
- Mode: WRITE
- Summary: Cancel a Shipment
- Parameters:
- `shipment_id` in `path` required
### list_shipment_rates
- Operation ID: `list_shipment_rates`
- Route: `GET /v1/shipments/{shipment_id}/rates`
- Mode: READ
- Summary: Get Shipment Rates
- Parameters:
- `shipment_id` in `path` required
- `created_at_start` in `query`
### shipments_update_tags
- Operation ID: `shipments_update_tags`
- Route: `PUT /v1/shipments/tags`
- Mode: WRITE
- Summary: Update Shipments Tags
- Body: JSON request body accepted.
### shipments_list_tags
- Operation ID: `shipments_list_tags`
- Route: `GET /v1/shipments/{shipment_id}/tags`
- Mode: READ
- Summary: Get Shipment Tags
- Parameters:
- `shipment_id` in `path` required
### tag_shipment
- Operation ID: `tag_shipment`
- Route: `POST /v1/shipments/{shipment_id}/tags/{tag_name}`
- Mode: WRITE
- Summary: Add Tag to Shipment
- Parameters:
- `shipment_id` in `path` required
- `tag_name` in `path` required
### untag_shipment
- Operation ID: `untag_shipment`
- Route: `DELETE /v1/shipments/{shipment_id}/tags/{tag_name}`
- Mode: WRITE
- Summary: Remove Tag from Shipment
- Parameters:
- `shipment_id` in `path` required
- `tag_name` in `path` required

57
skills/tags/SKILL.md Normal file
View File

@@ -0,0 +1,57 @@
---
name: tags-routes
description: Handle 5 OpenAPI operation(s) under /v1/tags for the tags route group.
---
# tags API Routes
Handle 5 OpenAPI operation(s) under /v1/tags for the tags route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_tags
- Operation ID: `list_tags`
- Route: `GET /v1/tags`
- Mode: READ
- Summary: Get Tags
### create_tag
- Operation ID: `create_tag`
- Route: `POST /v1/tags`
- Mode: WRITE
- Summary: Create a New Tag
- Body: JSON request body accepted.
### create_tag_2
- Operation ID: `create_tag_2`
- Route: `POST /v1/tags/{tag_name}`
- Mode: WRITE
- Summary: Create a New Tag
- Parameters:
- `tag_name` in `path` required
### delete_tag
- Operation ID: `delete_tag`
- Route: `DELETE /v1/tags/{tag_name}`
- Mode: WRITE
- Summary: Delete Tag
- Parameters:
- `tag_name` in `path` required
### rename_tag
- Operation ID: `rename_tag`
- Route: `PUT /v1/tags/{tag_name}/{new_tag_name}`
- Mode: WRITE
- Summary: Update Tag Name
- Parameters:
- `tag_name` in `path` required
- `new_tag_name` in `path` required

23
skills/tokens/SKILL.md Normal file
View File

@@ -0,0 +1,23 @@
---
name: tokens-routes
description: Handle 1 OpenAPI operation(s) under /v1/tokens/ephemeral for the tokens route group.
---
# tokens API Routes
Handle 1 OpenAPI operation(s) under /v1/tokens/ephemeral for the tokens route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### tokens_get_ephemeral_token
- Operation ID: `tokens_get_ephemeral_token`
- Route: `POST /v1/tokens/ephemeral`
- Mode: WRITE
- Summary: Get Ephemeral Token
- Parameters:
- `redirect` in `query`

47
skills/tracking/SKILL.md Normal file
View File

@@ -0,0 +1,47 @@
---
name: tracking-routes
description: Handle 3 OpenAPI operation(s) under /v1/tracking for the tracking route group.
---
# tracking API Routes
Handle 3 OpenAPI operation(s) under /v1/tracking for the tracking route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### get_tracking_log
- Operation ID: `get_tracking_log`
- Route: `GET /v1/tracking`
- Mode: READ
- Summary: Get Tracking Information
- Parameters:
- `carrier_code` in `query`
- `tracking_number` in `query`
- `carrier_id` in `query`
### start_tracking
- Operation ID: `start_tracking`
- Route: `POST /v1/tracking/start`
- Mode: WRITE
- Summary: Start Tracking a Package
- Parameters:
- `carrier_code` in `query`
- `tracking_number` in `query`
- `carrier_id` in `query`
### stop_tracking
- Operation ID: `stop_tracking`
- Route: `POST /v1/tracking/stop`
- Mode: WRITE
- Summary: Stop Tracking a Package
- Parameters:
- `carrier_code` in `query`
- `tracking_number` in `query`
- `carrier_id` in `query`

View File

@@ -0,0 +1,67 @@
---
name: warehouses-routes
description: Handle 6 OpenAPI operation(s) under /v1/warehouses for the warehouses route group.
---
# warehouses API Routes
Handle 6 OpenAPI operation(s) under /v1/warehouses for the warehouses route group.
Use the generated operation tools to make real API calls. Do not invent API responses.
If a tool reports missing setup, return the exact setup field name to the caller.
For write, update, or delete operations, state the intended action before calling the tool.
## Operations
### list_warehouses
- Operation ID: `list_warehouses`
- Route: `GET /v1/warehouses`
- Mode: READ
- Summary: List Warehouses
### create_warehouse
- Operation ID: `create_warehouse`
- Route: `POST /v1/warehouses`
- Mode: WRITE
- Summary: Create Warehouse
- Body: JSON request body accepted.
### get_warehouse_by_id
- Operation ID: `get_warehouse_by_id`
- Route: `GET /v1/warehouses/{warehouse_id}`
- Mode: READ
- Summary: Get Warehouse By Id
- Parameters:
- `warehouse_id` in `path` required
### update_warehouse
- Operation ID: `update_warehouse`
- Route: `PUT /v1/warehouses/{warehouse_id}`
- Mode: WRITE
- Summary: Update Warehouse By Id
- Parameters:
- `warehouse_id` in `path` required
- Body: JSON request body accepted.
### delete_warehouse
- Operation ID: `delete_warehouse`
- Route: `DELETE /v1/warehouses/{warehouse_id}`
- Mode: WRITE
- Summary: Delete Warehouse By ID
- Parameters:
- `warehouse_id` in `path` required
### update_warehouse_settings
- Operation ID: `update_warehouse_settings`
- Route: `PUT /v1/warehouses/{warehouse_id}/settings`
- Mode: WRITE
- Summary: Update Warehouse Settings
- Parameters:
- `warehouse_id` in `path` required
- Body: JSON request body accepted.