Marketplace esimaccess-api
install
source · Clone the upstream repo
git clone https://github.com/aiskillstore/marketplace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/aiskillstore/marketplace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/esimaccess/esimaccess-api" ~/.claude/skills/aiskillstore-marketplace-esimaccess-api && rm -rf "$T"
manifest:
skills/esimaccess/esimaccess-api/SKILL.mdsource content
eSIM Access API Skill
Interact with the eSIM Access API for complete eSIM lifecycle management.
When to Use This Skill
Use this skill when the user:
- Asks about eSIM operations: ordering, top-ups, cancellations, status checks
- Mentions ICCID, order number, QR code, or data usage
- Wants to check account balance or list available data packages
- Asks about roaming, travel data plans, or mobile connectivity
- Needs to manage eSIM profiles (suspend, unsuspend, revoke)
- Wants to configure webhooks for eSIM status notifications
- Asks to cancel and reissue an eSIM (refund/replace workflow)
- References the eSIM Access API or api.esimaccess.com
Example prompts
- "Check my eSIM Access balance"
- "What packages are available for Japan?"
- "Order a 5GB plan for the US"
- "Check the status of order B26041021130002"
- "How much data has ICCID 89852240810733629810 used?"
- "Top up my eSIM with another 5GB"
- "Cancel this unused eSIM and get a refund"
- "Set up a webhook for order notifications"
Quick Reference
- Base URL:
https://api.esimaccess.com/api/v1/open - Auth: HMAC-SHA256 signed headers — the accessCode is used as both the API identifier and signing key (see
)references/api-reference.md - Prices: API values / 10,000 = USD (e.g., 18000 = $1.80)
- Volumes: Bytes (1073741824 = 1 GB)
- Credentials: Get your accessCode from https://console.esimaccess.com/developer/index
Operations
Read (safe)
| Operation | Endpoint | Purpose |
|---|---|---|
| | Account balance in USD |
| | All supported countries |
| | Products by country/code |
| | Top-up options for ICCID |
| | Order details + ICCID |
| | Full eSIM profile info |
| | Data consumption stats |
| | Current webhook config |
Write (costs money or modifies state)
| Operation | Endpoint | Purpose |
|---|---|---|
| | Purchase new eSIM |
| | Add data to existing eSIM |
| | Cancel unused eSIM (refund) |
| | Temporarily disable |
| | Re-enable suspended |
| | Permanently disable (no refund) |
| | Send SMS to eSIM |
| | Configure notification URL |
Composite Workflows
| Operation | Purpose |
|---|---|
| Cancel unused eSIM, verify refund, order replacement with same package |
Key Rules
- Order flow:
returnscreate_order
. PollorderNo
every 3s (4 retries) for ICCID. ORDER_STATUS webhook is fallback.check_order_status - Top-ups: Use
(not ICCID).esimTranNo
means eligible. Cannot top up after expiry.supportTopUpType === 2 - Cancel vs Revoke: Cancel works on unused eSIMs (RELEASED/GOT_RESOURCE) and provides refund. Revoke works on activated eSIMs with no refund.
- Usage query: Requires
, not ICCID. Do an ICCID lookup viaesimTranNo
first if needed./esim/query - SMS: Uses
field (notmessage
). Only works on activated eSIMs.content
Authentication in Any Language
The
references/api-reference.md file contains HMAC-SHA256 auth examples in both Node.js and Python. Ask your AI to generate auth code in your preferred language using the signature algorithm documented there.
Testing
node scripts/test-esim-api.mjs <accessCode>
Installation
Any AI agent (via Skills CLI)
npx skills add esimaccess/esimaccess-api
Manual install
Download from https://app.esimaccess.com/public/skill/ and place in your agent's skills directory.
Files
| File | Purpose |
|---|---|
| This file - skill definition |
| 15 end-to-end API tests |
| Full API docs: endpoints, auth, status states, webhooks, error codes |