Introduction Last updated: 2026-11-03

ediFabric Cloud is a REST API that reads, writes, validates, and acknowledges EDI. You send a file or JSON and get JSON or EDI back. It is the same product as ediFabric .NET and Native: one serial key, and Cloud calls count toward the same plan.

This page is for developers calling the hosted API: it covers authentication, licensing and quotas, the base URL, every endpoint, and error handling.

Two versions of the API are available. v3 is new and supports X12 only for now. v2 supports all EDI formats, and stays available alongside v3 until v3 supports them too. See API versions.

Sign up free for Community   API reference

Call it

  1. To evaluate without an account, use the demo serial key bd96a836feca45cb91c86ee65d281f52 as the API key. It works for ediFabric Cloud, .NET, and Native, and has a limited quota. When it runs out, sign up for Community and copy your own serial from Your account. That serial is the API key. The same value is what .NET passes to License.SetSerial and what Native passes to set_serial.
  2. Send it on every request as the Ocp-Apim-Subscription-Key header. All calls use HTTPS.
  3. POST the EDI file to https://api.edination.com/v2/x12/read (or the matching standard below).
curl -X POST "https://api.edination.com/v2/x12/read" \
  -H "Ocp-Apim-Subscription-Key: YOUR_SERIAL_KEY" \
  -H "Content-Type: application/octet-stream" \
  --data-binary @purchase-order.edi

For X12 on v3, POST the file to /x12/parse instead. With mode=3, one call returns the JSON, the validation results and the acknowledgment:

curl -X POST "https://api.edination.com/v3/x12/parse?mode=3" \
  -H "Ocp-Apim-Subscription-Key: YOUR_SERIAL_KEY" \
  -H "Content-Type: application/octet-stream" \
  --data-binary @purchase-order.edi

Treat the serial like a password: keep it out of source control and browser code. Community is for non-production evaluation.

The API accepts application/octet-stream, multipart/form-data (v2 only), or JSON. Responses are JSON or application/octet-stream. Property names are case-insensitive. Query parameters are UTF-8 and belong on the URL.

How Cloud is licensed

One operation is one parse, generate, validate, or acknowledge call. On v3, /x12/parse counts as one operation in every mode, so translating, validating and acknowledging a file in one call costs one operation, where separate calls on v2 cost three. On Community that quota is shared with ediFabric .NET and Native. When the quota is used up, Cloud returns 403 Forbidden. .NET and Native throw LicenseException with error 639 for the same limit.

Plan Cloud
Community 250 operations per day, shared with .NET and Native. Public EDI models. Non-production. Never expires.
Developer 3,000 Cloud operations per month, then $0.01 each. Private custom models. Local .NET and Native operations are unlimited.
Enterprise 25,000 Cloud operations per month, then $0.008 each. Private custom models. Optional dedicated host api-{id}.edination.com.
Cloud only Hosted API with no .NET or Native license. First 1,000 operations each month are free, then $0.01. Private custom models. Standard support only in a billing month where overage fees exceed $100, otherwise no support.

Compare plans at edifabric.com/pricing. Use of the API is subject to the EULA.

API versions

v3 only supports X12 for now, so both versions are available side by side until v3 supports all EDI formats. For X12, use v3 with Parse and Build. For every other format, use v2.

v2 v3
Base URL https://api.edination.com/v2 https://api.edination.com/v3
EDI formats X12, EDIFACT, HL7, NCPDP, VDA X12
X12 operations Read, write, validate, ack Parse and build
Input for validation and acknowledgments JSON only A raw X12 file
Output for validation and acknowledgments OperationResult and X12Interchange Validation report, with the acknowledgment as raw X12
Default X12 acknowledgment 997 999
X12 trailers in JSON GETrailers and IEATrailers arrays GE and IEA objects
File that can't be translated HTTP 200, with the errors in Result HTTP error, with the errors in Details
File upload Binary or multipart/form-data Binary
X12 request limit 3 MB for read, 28.6 MB for write, validate and ack 5 MB for parse, 50 MB for build
Models System and custom models, Model operations System and custom models, with the model parameter of Parse. Custom models are managed in the EDI Spec Builder. v3 has no model operations and is not compatible with the v2 Model operations.

Moving to v3

v3 does not have the v2 X12 operations, and it rejects v2 X12 JSON, so update your integration before you switch. See Moving from v2 to v3.

Base URL

https://api.edination.com/v2
https://api.edination.com/v3

The current versions are v2 and v3, which supports X12 only for now. A breaking change ships as a new version on that path. Enterprise dedicated hosts use https://api-{id}.edination.com/v2. The id is assigned with the plan.

Endpoints

Paths below are relative to the base URL. POST /x12/parse is https://api.edination.com/v3/x12/parse.

v3

Verb Path What it does
POST /x12/parse X12 file to JSON, with optional validation and acknowledgment
POST /x12/build X12 JSON to an X12 file

v2

Verb Path What it does
POST /x12/read X12 file to JSON
POST /edifact/read EDIFACT file to JSON
POST /hl7/read HL7 file to JSON
POST /ncpdp/read NCPDP file to JSON
POST /vda/read VDA file to JSON
POST /x12/write X12 JSON to an X12 file
POST /edifact/write EDIFACT JSON to an EDIFACT file
POST /hl7/write HL7 JSON to an HL7 file
POST /ncpdp/write NCPDP JSON to an NCPDP file
POST /vda/write VDA JSON to a VDA file
POST /x12/validate Validate X12 JSON
POST /edifact/validate Validate EDIFACT JSON
POST /hl7/validate Validate HL7 JSON
POST /ncpdp/validate Validate NCPDP JSON
POST /vda/validate Validate VDA JSON
POST /x12/ack X12 997, 999, and TA1
POST /edifact/ack EDIFACT CONTRL

Upload EDI as application/octet-stream or multipart/form-data. Download generated EDI or acknowledgments as application/octet-stream. Models and errors are JSON, UTF-8.

Errors

2xx means the call succeeded. 4xx means the request was rejected (a missing header, a bad body, or a quota). 5xx means the service failed.

A failed body is still JSON, with Code and a Details array:

{
  "Code": 0,
  "Details": [
    "string"
  ]
}

On v3, a file that can't be translated is also a failed call, for example HTTP 500 with parse: error 429: Can't find ISA segment in Details. On v2, the same file returns HTTP 200 with the errors in the Result section of X12Interchange. v3 also returns 413 when the request body is over the limit, and 415 when the Content-Type is wrong: Parse takes only application/octet-stream, and Build only application/json.

403 Forbidden means the plan quota is used up. On Community that is the shared 250 operations per day.

Status and SDKs

API status reports Available, Degraded, or Unavailable.

Generate a v2 client from the OpenAPI document on SwaggerHub.

Generate an SDK from the EdiNation API on SwaggerHub

Next