You're viewing the x12port developer demo — all actions are read-only. ✨ Sign up for a free trial to get started.
🤝
You haven't added any clients yet Add your clients and non-connected partners to start managing their EDI.
👁 Demo Mode — read-only view  ·  No real data is shown. Start Free Trial → Exit demo
💻
Best viewed on a larger screen
The x12port Developer Workspace is designed for desktop, laptop, and tablet use. For the best experience, please switch to a device with a wider screen.
Developer Workspace

Welcome back, Dev

⚡ Developer · Developer Pro · dev-demo@x12port.com · Acme Integration Lab
API Calls
180
This month
Active Keys
3
Across all envs
Pending Mappings
Awaiting your map
Partners Live
Active & ready
Client Mapping Requests
Trading partners added by x12port client accounts — configure a field map, then mark them ready so the client can go live.
Loading partner requests…
Clients 3
Manage your platform-connected and offline clients.
3
Total Clients
🔗 0
Linked
0
On x12port
3
Offline
1
Missing EDI ID
API Keys
Use these keys to authenticate requests to the x12port API.
Name Prefix Environment Created
Production xp_live_iyKgYbPo… live May 05, 2026
Sandbox — CI Tests xp_test_4Qgc1KnT… sandbox May 05, 2026
Sandbox — Default xp_test_j2VyGwkY… sandbox May 05, 2026
Create new key
Quick Start
Make your first API call in under 5 minutes.
# Step 1 — verify your key
curl https://x12port.com/api/v1/ping \
  -H "Authorization: Bearer xp_test_YOUR_KEY"

# Step 2 — parse an X12 document
curl https://x12port.com/api/v1/parse \
  -X POST \
  -H "Authorization: Bearer xp_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "format": "x12",
    "document": "ISA*00*          *00*          *ZZ*ACME           *ZZ*PARTNER        *260416*1200*^*00501*000000001*0*T*:~GS*PO*ACME*PARTNER*20260416*1200*1*X*005010~ST*850*0001~BEG*00*SA*PO-88241**20260416~SE*2*0001~GE*1*1~IEA*1*000000001~"
  }'

# Step 3 — convert using a saved map ID
curl https://x12port.com/api/v1/convert \
  -X POST \
  -H "Authorization: Bearer xp_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "map_id": 1,
    "document": "ISA*00*..."
  }'
import requests

BASE = "https://x12port.com/api/v1"
HEADERS = {
    "Authorization": "Bearer xp_test_YOUR_KEY",
    "Content-Type": "application/json"
}

# Step 1 — verify key
r = requests.get(f"{BASE}/ping", headers=HEADERS)
print(r.json())  # {"ok": true, "environment": "sandbox", ...}

# Step 2 — parse a document
r = requests.post(f"{BASE}/parse", headers=HEADERS, json={
    "format": "x12",
    "document": "ISA*00*..."
})
fields = r.json()["fields"]

# Step 3 — convert using a saved map
r = requests.post(f"{BASE}/convert", headers=HEADERS, json={
    "map_id": 1,
    "document": "ISA*00*...",
    "save_to_vault": True
})
print(r.json()["output"])
const BASE = 'https://x12port.com/api/v1';
const HEADERS = {
  'Authorization': 'Bearer xp_test_YOUR_KEY',
  'Content-Type': 'application/json'
};

// Step 1 — verify key
const ping = await fetch(`${BASE}/ping`, { headers: HEADERS });
console.log(await ping.json()); // { ok: true, environment: 'sandbox', ... }

// Step 2 — parse a document
const parse = await fetch(`${BASE}/parse`, {
  method: 'POST', headers: HEADERS,
  body: JSON.stringify({ format: 'x12', document: 'ISA*00*...' })
});
const { fields } = await parse.json();

// Step 3 — convert using a saved map
const convert = await fetch(`${BASE}/convert`, {
  method: 'POST', headers: HEADERS,
  body: JSON.stringify({ map_id: 1, document: 'ISA*00*...', save_to_vault: true })
});
console.log((await convert.json()).output);
Environments
Sandbox
x12port.com/api/v1 (xp_test_ key)
Active Upgrade →
Production
x12port.com/api/v1 (xp_live_ key)
🔒 Upgrade
Support

Questions about the API or EDI specs? We're here.

Contact Support
✨ x12port Assistant
Free AI support • No credits needed
Hi! I’m the x12port AI Assistant. Ask me anything about EDI, your account, or how to use x12port. 👋