# atoship vs ShipStation API

> ShipStation scores 51 (D) to atoship's 43 (E) for shipping rates. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/atoship-vs-shipstation
- Markdown: https://www.anchorterminal.com/compare/atoship-vs-shipstation.md (~4,550 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

ShipStation API scores 51 (D) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on security & auth. Both do shipping rates.

- atoship: grade E, 43/100, rank #1247 of 1486. Markdown https://www.anchorterminal.com/tools/atoship.md · JSON https://www.anchorterminal.com/api/v1/tools/atoship.json
- ShipStation API: grade D, 51/100, rank #1038 of 1486. Markdown https://www.anchorterminal.com/tools/shipstation.md · JSON https://www.anchorterminal.com/api/v1/tools/shipstation.json
- Best shipping and fulfilment APIs for AI agents: https://www.anchorterminal.com/best/shipping/index.md
- All 66 shipping comparisons: https://www.anchorterminal.com/compare/shipping/index.md

## Which one, for what

### atoship (E)

Good for: US sellers who want cheap USPS, UPS and FedEx labels bought by an agent from a capped wallet.

Ahead on:
- Security & auth, 55 against 32

Also in its favour:
- Runs on your own machine
- Free to start without a card
- No incidents deducted, where ShipStation API loses 6 points for them

Watch for: No status page; status.atoship.com serves the home page

### ShipStation API (D)

Good for: An agent working inside a merchant's existing ShipStation account (orders, batches, inventory, labels), or a developer who wants a free sandbox through the ShipStation API plans.

Ahead on:
- Reliability, 70 against 30
- Schema & documentation, 83 against 55
- Agent ergonomics, 64 against 53
- Maintenance & community, 33 against 10
- Transparency & trust, 64 against 45

Watch for: One API key with full account access. No scopes, read-only keys or approval step before a label is bought


## Why the edge

### Reliability: ShipStation API +40

- atoship (30): Graded as a hosted service on the MCP server at atoship.com/api/mcp and REST API v1. status.atoship.com serves the marketing home page and the docs' API Status page rendered no status content, so no status page is counted (0). No readable incident history (5). 429 and a `RATE_LIMIT_EXCEEDED` code are documented, without numbers (5 of 15). A 429 carries `error.retryAfter` and Retry-After; no idempotency key for label purchases was found (10 of 15). No SLA (0). Not labelled beta (10). 0 + 5 + 5 + 10 + 0 + 10 = 30.
- ShipStation API (70): Graded on ShipStation API v2 at api.shipstation.com/v2, with the hosted lines. Statuspage at status.shipstation.com with components for Companion API V1 and V2, carriers and marketplaces (20). The history pages and feed, read on 4 November, list 13 incidents and one scheduled maintenance between 6 August and 4 November. The four labelled major each touch one or two carriers (DPD Local and DX on 11 September, Evri on 24 and 25 September, DPD on 20 October, Evri shipments to the EU on 29 and 30 October), and the rest are minor or notices, so all are partial and read as minor (20). 200 requests a minute by default, per the 7 October check, not re-read on 4 November (15). 429 responses carry `Retry-After` and the docs ask for retries handled globally, with no idempotency key or safe-retry guidance for label purchases, per the 7 October check, not re-read on 4 November (10). No SLA found (0). The getting-started page says v2 "is currently in an early release stage" while calling it tested and stable, per the 7 October check, not re-read on 4 November (5).

### Schema & documentation: ShipStation API +28

- atoship (55): No OpenAPI found (/openapi.json is 404); a Postman collection v2.1 of 15 endpoints is the only machine-readable contract, and the hosted MCP tools' schemas were not read because /api/ is disallowed (15 of 25). llms.txt (10). The MCP page gives each tool a one-line description and an example prompt (8 of 20). Input typing could not be checked beyond the docs' object pages (5 of 15). The errors page documents status codes, `error.code` values and `retryAfter`, with examples (12 of 15). v1 API, no changelog found (5 of 15). 15 + 10 + 8 + 5 + 12 + 5 = 55.
- ShipStation API (83): OpenAPI 3.1 for v2 at docs.shipstation.com/_bundle/apis/@shipstation-v2/openapi.yaml, 173 operations on 123 paths and 372 schemas (25). llms.txt with 480 lines of links and a Markdown copy of each docs page (10). Guides explain when to use rates against estimates and webhooks against polling. Operation descriptions in the spec are one line each (13). 152 enums, required fields and read-only markers, though carrier and service codes are free strings that depend on the account (12). 1,648 example entries and enumerated `error_code` and `error_type` values. The spec documents 400, 404 and 500 but no 401 or 429 response (11). Release notes are dated by month and the spec version has stayed 2.0.0 through every addition (12). Docs, pricing and legal pages per the 7 October check, not re-read on 4 November.

### Security & auth: atoship +23

- atoship (55): Live and test API keys sent as Bearer tokens, with the docs advising separate keys with limited scopes and rotation, and OAuth with PKCE for the hosted MCP server (25 of 30). Test keys create no real labels, the consent screen names label buying and voiding, and the docs say the agent can spend only funds already in the wallet, with no per-call confirmation (12 of 20). Responses carry addresses and carrier tracking data rather than free text from strangers (10). No audit log found (0). security.txt valid to December 2027 with a security contact; no certification, bounty or disclosure policy beyond the terms (8 of 20). 25 + 12 + 10 + 0 + 8 = 55.
- ShipStation API (32): One secret in an `API-Key` header. The docs say the key gives full access. Platform accounts hold one active v2 key that can be regenerated, and ShipStation API accounts have separate `TEST_` sandbox keys (17). No scopes, read-only keys or confirmation before a label purchase. The sandbox key is the only lower-risk mode (5). Responses carry order text, addresses and carrier messages written by others, with no injection guidance (3). A `request_id` on every response. No per-key audit log found in the docs (3). TLS 1.2 or higher required, HSTS on the API host and RSA-SHA256 signed webhooks with a JWKS. security.txt returns 404 on three hosts, and no certification, bug bounty or disclosure policy was found on the pages we read (4). Docs, pricing and legal pages per the 7 October check, not re-read on 4 November.

### Maintenance & community: ShipStation API +23

- atoship (10): No changelog or release notes found. The newest dated release is @atoship/mcp 1.0.2 on 18 February 2026, more than 180 days ago (0). No dated releases in the 90 days from 8 August (0). Support by email, with no public tracker; the repository named on npm is not public (5 of 15). The MCP package is official, and only the Go SDK of eight listed is installable (5 of 15). No public CI (0). 0 + 0 + 5 + 5 + 0 = 10.
- ShipStation API (33): Release notes on docs.shipstation.com are dated by month only, with entries for August, September and October 2026 on the 7 October reading, so they don't set recency. The newest dated change from ShipStation's own sources is the shipengine-openapi repository commit of 11 June 2026, after .NET SDK v3.2.1 on 27 May and Python 2.1.1 on 6 May (146 days, 10). No dated release in the 90 days from 6 August. Month-dated entries counted at half come to fewer than three, and commits on 27 October in the JavaScript and .NET SDK repositories are in no release (0). Closed service with monthly release notes, an API support address (apisupport@shipstation.com) and a community forum. We couldn't measure reply times (10). Official SDKs exist in six languages, and all call the v1 ShipEngine host. JavaScript's newest tag is v1.0.7 of 31 January 2024 (8). SDK repositories have CI workflows, and the JavaScript SDK's CI was rebuilt on 27 October. The OpenAPI repository was last changed on 11 June 2026 (5).

### Transparency & trust: ShipStation API +19

- atoship (45): Closed service under terms naming atoship LLC of California (15 of 30). The privacy policy (7 May 2026) keeps data as long as necessary with no periods and names no processors (10 of 30). No deprecation policy or dated notices found (0). No subprocessor list or data locations found (0). 15 + 10 + 0 + 0 = 25.
- ShipStation API (64): Closed service under terms of service effective 16 July 2026 that name Auctane LLC d/b/a ShipStation. The v2 OpenAPI file is marked MIT and the SDKs are Apache 2.0 (16). The privacy policy, effective 18 March 2026, is Auctane, Inc.'s for all its brands. It keeps data "as long as necessary" with no periods, and says third parties may not train AI models on personal information. No public DPA was found (12). The legacy V1 API is described as deprecated with removal "in the future" and no date, and the terms let ShipStation withdraw API access at its discretion (6). US persons' data stays in the United States and EEA and UK data may move there under the Data Privacy Framework. Service providers are named by type, with no subprocessor list (8). Docs, pricing and legal pages per the 7 October check, not re-read on 4 November.

### Agent ergonomics: ShipStation API +11

- atoship (53): 12 MCP tools (15, for 11 to 30). List tools for orders and labels, with paging not documented in the pages read (8 of 20). Machine-readable error codes with a retry delay (18 of 20). The npm package's tools carry no readOnlyHint or destructiveHint, and no idempotency key was found; `void_label` undoes a mistaken purchase (5 of 20). Only the Go SDK installs, the hosted server is one URL, and test keys give a safe default (7 of 15). 15 + 8 + 18 + 5 + 7 = 53.
- ShipStation API (64): No MCP server that performs shipping operations. The MCP server at docs.shipstation.com/mcp reads documentation only. List endpoints take `page_size`. No field selection was found (12). `page`, `page_size`, `sort_by`, `sort_dir` and filters by status, tag, dates, store and external id on list calls (20). Errors carry `error_source`, `error_type`, `error_code`, `message`, field names and a `request_id` (18). No idempotency keys. `external_shipment_id` is unique per shipment, labels can be voided and `test_label` exists, which we counted as partial safe-retry support (6). Official SDKs in six languages call api.shipengine.com/v1, not v2, and a label needs a `carrier_id` and `service_code` looked up first (8). Docs, pricing and legal pages per the 7 October check, not re-read on 4 November.

## Score by category

| Category | Weight | atoship | ShipStation API | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 30 | 70 | ShipStation API +40 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 55 | 83 | ShipStation API +28 |
| Agent ergonomics | 13% (16.2 this run) | 53 | 64 | ShipStation API +11 |
| Security & auth | 14% (17.5 this run) | 55 | 32 | atoship +23 |
| Payments & pricing | 10% (12.5 this run) | 40 | 40 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 10 | 33 | ShipStation API +23 |
| Transparency & trust | 7% (8.8 this run) | 45 | 64 | ShipStation API +19 |
| Negative events | ≤15 | 0 | -6 | |
| **Total** | | **43 · E** | **51 · D** | |

## Facts side by side

| Fact | atoship | ShipStation API |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | atoship LLC | Auctane LLC d/b/a ShipStation |
| Hosted endpoint | `https://atoship.com/api/mcp` | `https://api.shipstation.com/v2` |
| Transports | Streamable HTTP, stdio | HTTP |
| Auth | OAuth or key | API key |
| Pricing | Pay per use | Freemium |
| x402 | no | no |
| Licence | none | Proprietary service under ShipStation's terms of service. The v2 OpenAPI file is marked MIT and the SDKs on GitHub are Apache 2.0 |
| Tools exposed | 12 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-02-18 | 2026-10-01 |
| Terms last updated | 2026-08-20 | no date given |
| Privacy policy last updated | 2026-05-07 | 2026-03-18 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | yes |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | yes | yes |
| Popularity | none | 6.8k npm/wk |

## How the scores have moved

### atoship

No score change since it was listed.

### ShipStation API

- -8.3 on 4 November 2026 (C to D): correction, negative event

## Verdicts

**atoship.** atoship gives agents twelve MCP tools and a REST API for US labels with published per-unit fees, free sign-up, test keys and a wallet the agent cannot overspend. No status page, rate-limit figures, OpenAPI spec or changelog was found, and the npm MCP package has not changed since February 2026.

**ShipStation API.** A public OpenAPI 3.1 contract with 173 operations, Markdown docs for agents and a free ShipStation API plan with a sandbox make a first rate quote or test label reachable without a contract. One API key carries full account access, with no scopes or idempotency keys on label purchases, and API release notes carry month-only dates.

## Before you call either

### atoship

1. Use an `ak_test_` key until the user confirms live labels; test mode creates no real labels
2. Ask the user before `purchase_label`, since it spends the wallet balance
3. Call `void_label` promptly for a mistaken label, and check the carrier's refund rules
4. Branch on `error.code`, and on 429 wait `error.retryAfter` seconds
5. Validate the address with `validate_address` before buying; the standalone endpoint costs $0.03 a call

### ShipStation API

1. Send the key in an `API-Key` header to https://api.shipstation.com/v2. A key that starts `TEST_` runs in the sandbox on the same host
2. Call GET /v2/carriers first. Rate and label calls need `carrier_ids` or a `carrier_id` and a `service_code` from that account
3. Don't blindly retry POST /v2/labels after a timeout. List labels first, then void a duplicate with PUT /v2/labels/{label_id}/void
4. Check the `errors` array on 2XX responses too, and read `error_source` to tell a carrier fault from a ShipStation one
5. On a platform (Standard or Premium) key every label is real and charged. Ask the owner before buying, and void test labels at once

## Questions

### Which is better for AI agents, atoship or ShipStation API?

ShipStation API scores 51 (D) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on security & auth.

### Do atoship and ShipStation API need an API key?

atoship takes an API key or an OAuth sign-in. ShipStation API needs an API key.

### Can an agent call atoship and ShipStation API without installing anything?

Yes. atoship has a hosted endpoint at https://atoship.com/api/mcp and ShipStation API at https://api.shipstation.com/v2.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/atoship-vs-shipstation.json, and with the fewest tokens: https://www.anchorterminal.com/compare/atoship-vs-shipstation.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "atoship", "b": "shipstation"}`. From a terminal: `anchor compare atoship shipstation`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/atoship.json and https://www.anchorterminal.com/api/v1/tools/shipstation.json

## Other comparisons with atoship or ShipStation API

- [atoship vs EasyPost](https://www.anchorterminal.com/compare/atoship-vs-easypost.md)
- [atoship vs Easyship](https://www.anchorterminal.com/compare/atoship-vs-easyship.md)
- [atoship vs Envia](https://www.anchorterminal.com/compare/atoship-vs-envia.md)
- [atoship vs Karrio](https://www.anchorterminal.com/compare/atoship-vs-karrio.md)
- [atoship vs Sendcloud](https://www.anchorterminal.com/compare/atoship-vs-sendcloud.md)
- [atoship vs ShipBob](https://www.anchorterminal.com/compare/atoship-vs-shipbob.md)
- [atoship vs Shippo](https://www.anchorterminal.com/compare/atoship-vs-shippo.md)
- [atoship vs ShippyPro](https://www.anchorterminal.com/compare/atoship-vs-shippypro.md)
- [EasyPost vs ShipStation API](https://www.anchorterminal.com/compare/easypost-vs-shipstation.md)
- [Easyship vs ShipStation API](https://www.anchorterminal.com/compare/easyship-vs-shipstation.md)
- [Envia vs ShipStation API](https://www.anchorterminal.com/compare/envia-vs-shipstation.md)
- [Karrio vs ShipStation API](https://www.anchorterminal.com/compare/karrio-vs-shipstation.md)
- [Sendcloud vs ShipStation API](https://www.anchorterminal.com/compare/sendcloud-vs-shipstation.md)
- [ShipBob vs ShipStation API](https://www.anchorterminal.com/compare/shipbob-vs-shipstation.md)
- [Shippo vs ShipStation API](https://www.anchorterminal.com/compare/shippo-vs-shipstation.md)
- [ShippyPro vs ShipStation API](https://www.anchorterminal.com/compare/shippypro-vs-shipstation.md)
- [atoship vs Ship24](https://www.anchorterminal.com/compare/atoship-vs-ship24.md)
- [atoship vs TrackingMore](https://www.anchorterminal.com/compare/atoship-vs-trackingmore.md)
- [Ship24 vs ShipStation API](https://www.anchorterminal.com/compare/ship24-vs-shipstation.md)
- [ShipStation API vs TrackingMore](https://www.anchorterminal.com/compare/shipstation-vs-trackingmore.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
