For the complete documentation index, see llms.txt. This page is also available as Markdown.

EDI Transactions

Query the EDI transaction log surfaced by the B2B Manager dashboard.

Each record represents a single EDI document (one X12 transaction set or one EDIFACT message) that was processed through a Celigo flow. The envelope metadata (sender/receiver IDs, control numbers, document type, functional acknowledgement status) is extracted during flow execution and indexed so the B2B dashboard can render filterable activity lists.

Requires a B2B / EDI license on the account.

EDI transaction schema

Update part of an EDI transaction

patch
/v1/ediTransactions

Partially updates one or more EDI transaction records. Commonly used to update the faStatus field (functional acknowledgment status).

The endpoint is lenient — when the ediTransactions array is empty, missing, or contains IDs that don't match any existing records, the response is 200 with {"ediTransactions": []} rather than a 400. Callers should always supply fileType and a non-empty ediTransactions array for meaningful results.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
fileTypestring · enumRequired

EDI file type.

Possible values:
Responses
200

Updated transaction records.

application/json
patch/v1/ediTransactions
PATCH /v1/ediTransactions HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 95

{
  "fileType": "X12",
  "ediTransactions": [
    {
      "_id": "69ca6b7a42f275a91eab88bd",
      "faStatus": "accepted"
    }
  ]
}
{
  "ediTransactions": []
}

Query the EDI transaction log

post
/v1/ediTransactions/query

Returns EDI documents processed through B2B Manager flows, with envelope metadata (sender/receiver IDs, control numbers), document type, direction, and functional acknowledgement status. This is the data source behind the B2B Manager "Transactions" dashboard.

Results are cursor-paginated — when more records exist beyond limit, the response includes pageToken.next. Pass it back as pageToken in the next request to get the next page. The server caps limit at 1000.

Use fileType with a dated window (startDate/endDate) to keep result sets bounded. faStatus must be passed as an array when filtering. Unknown filter fields are silently ignored. To fetch the raw EDI file for a returned record, use POST /v1/jobs/{_flowJobId}/files/signedURL with the record's s3Key.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

Filter for POST /v1/ediTransactions/query. All fields are optional. Results are narrowed by fileType, interchangeSenderId, interchangeReceiverId, documentNumber, faStatus, and the startDate/endDate window. direction, documentType, and _integrationId are accepted but not applied server-side (filter on those client-side). Records come back newest-first by lastModified and are cursor-paginated via pageToken.

fileTypestring · enumOptional

EDI standard family. Defaults to X12 when omitted — set fileType: EDIFACT explicitly to query EDIFACT records.

Possible values:
interchangeSenderIdstringOptional

Filter by interchange sender ID — exact match against the record's isaSenderId (X12 ISA06). Applied server-side.

Example: 1234567890
interchangeReceiverIdstringOptional

Filter by interchange receiver ID — exact match against the record's isaReceiverId (X12 ISA08). Applied server-side.

Example: CELIGOLABZ
directionstring · enumOptional

Transaction direction. Accepted by the endpoint but not applied as a server-side filter — the result set is unaffected; filter client-side.

Possible values:
documentTypestringOptional

EDI document type code. For X12 this is the numeric transaction-set ID as a string (e.g. "850", "810", "856", "997"); for EDIFACT the UNH01 message type (e.g. "ORDERS", "INVOIC", "DESADV", "CONTRL"). Accepted but not applied as a server-side filter — the result set is unaffected; filter client-side.

Example: 850
documentNumberstringOptional

Business document number to filter on — matches the documentNumber field extracted from the transaction set (e.g. a purchase-order number from an 850's BEG03).

Example: PO03302026A
_integrationIdstring · objectIdOptional

Integration the transaction was processed by. Accepted but not applied as a server-side filter — the result set is unaffected; filter client-side.

Example: 66cc9b31f2be816bf9377036
Show properties
startDateinteger · int64Optional

Lower bound of the lastModified window, as epoch milliseconds. The CLI converts ISO-8601 date strings to epoch-ms before calling. When omitted, the server applies an internal default window.

Example: 1742774400000
endDateinteger · int64Optional

Upper bound of the lastModified window, as epoch milliseconds. Must be greater than startDate.

Example: 1745452800000
limitinteger · min: 1 · max: 1000Optional

Maximum number of records to return per page. Server-enforced range is 1–1000. When more records exist beyond the limit, the response includes a pageToken.next cursor for the next page.

Example: 100
pageTokenstringOptional

Opaque cursor from a previous response's pageToken.next. Pass this value to retrieve the next page of results. Omit on the first call.

Responses
200

One page of EDI transaction records. When more records exist beyond limit, pageToken.next is included for the next page. ediTransactions is [] when no records match — the endpoint does not return 204 on empty results.

application/json

One page of EDI transaction records matching the request filter. When more records exist beyond the limit, pageToken.next contains an opaque cursor to pass back on the next request for the next page.

post/v1/ediTransactions/query
POST /v1/ediTransactions/query HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 56

{
  "fileType": "X12",
  "limit": 100,
  "startDate": 1742774400000
}
{
  "ediTransactions": []
}

Get signed URL to download EDI transactions CSV

get
/v1/ediTransactions/signedURL

Exports EDI transaction-log records matching a lastModified date window to a CSV file and returns a short-lived pre-signed S3 URL for downloading it — the API equivalent of the B2B Manager dashboard's transaction download.

When startDate and endDate are both omitted, the export covers the last 24 hours. When the window matches more records than the server-side export cap, the request fails with exceeded_max_ediTransactions — narrow the window and retry.

CSV columns for X12 exports: Doc no., Doc type, FA status, File type, Direction, Processed, ISA no., GS no., ST no., ISA sender, ISA receiver, GS sender, GS receiver, FA details, MDN status. EDIFACT exports replace FA status with ACK status and the ISA/GS/ST columns with UNB no., UNH no., UNB sender, UNB receiver. The Processed timestamp is rendered in the account owner's timezone preference.

The signed URL expires 15 minutes after generation (S3 X-Amz-Expires=900) — fetch it promptly and do not persist it. To browse transaction records via the API instead, use POST /v1/ediTransactions/query.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
fileTypestring · enumOptional

Which transaction log to export. Defaults to X12 when omitted — pass fileType=EDIFACT explicitly to export EDIFACT records. The two logs produce different CSV columns.

Possible values:
startDateinteger · int64Optional

Lower bound of the lastModified window, as epoch milliseconds (non-numeric values are rejected). When both startDate and endDate are omitted, the window defaults to the last 24 hours.

Example: 1742774400000
endDateinteger · int64Optional

Upper bound of the lastModified window, as epoch milliseconds (non-numeric values are rejected). Must be greater than startDate. Defaults to the current time when only startDate is provided — sending endDate without startDate fails with start_time_or_end_time_missing.

Example: 1745452800000
Responses
200

Signed URL for the generated CSV export. Returned even when zero records match the window — the CSV then contains only the header row.

application/json

Location of the CSV export generated from the matching EDI transaction records.

urlstring · uriRequired

Pre-signed S3 URL that streams the CSV export when fetched with a plain GET (no auth headers needed). Expires 15 minutes after generation (S3 X-Amz-Expires=900) — fetch it promptly, do not persist it.

Example: https://integrator-userdata-delete-30.s3.us-east-1.amazonaws.com/ediTransactions/5e58483b68b52e5827d56a86/TransactionSummary_20260614_20260713_5e58483b68b52e5827d56a86.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-SignedHeaders=host&X-Amz-Signature=4f9b2c1e8a3d7f0b5c6e9a2d4f8b1c3e7a0d5f2b9c4e6a8d1f3b7c0e5a9d2f4b
get/v1/ediTransactions/signedURL
GET /v1/ediTransactions/signedURL HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "url": "https://integrator-userdata-delete-30.s3.us-east-1.amazonaws.com/ediTransactions/5e58483b68b52e5827d56a86/TransactionSummary_20260614_20260713_5e58483b68b52e5827d56a86.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAEXAMPLE%2F20260713%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260713T120000Z&X-Amz-Expires=900&X-Amz-Security-Token=EXAMPLE-STS-TOKEN&X-Amz-SignedHeaders=host&X-Amz-Signature=7d0e5a9d2f4b6c8e1a3f7b0c5e9a2d4f8b1c3e7a0d5f2b9c4e6a8d1f3b7c0e5a"
}

Get FA details for an EDI transaction

get
/v1/ediTransactions/{_ediTransactionId}/faDetails

Returns functional acknowledgment (FA) details for a specific EDI transaction. FA details are only available for transactions with a "Rejected" status in B2B Manager.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
_ediTransactionIdstringRequired

The EDI transaction ID.

Example: 6a0377fcbfecf34a362e9be2
Query parameters
fileTypestring · enumRequired

EDI file type.

Possible values:
Responses
200

FA detail envelope.

application/json
get/v1/ediTransactions/{_ediTransactionId}/faDetails
GET /v1/ediTransactions/{_ediTransactionId}/faDetails?fileType=X12 HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "faDetails": {
    "Interchange Control Number": "000000005",
    "Group": [
      {
        "Group Control Number": "1",
        "Identifier Code": "FA",
        "Transaction": [
          {
            "Transaction set Control Number": "0004",
            "Document Type": "850",
            "Errors": [
              {
                "Segment ID": "BEG",
                "Element ID": "BEG03",
                "Error message": "Mandatory data element missing",
                "Data in error": "",
                "Segment error": "4"
              }
            ]
          }
        ]
      }
    ]
  }
}

Get MDN details for an EDI transaction

get
/v1/ediTransactions/{_ediTransactionId}/mdn

Returns AS2 Message Disposition Notification (MDN) metadata for a specific EDI transaction record from the B2B Manager dashboard. The server reads the stored MDN artifact associated with the transaction and returns its raw body text together with a parsed disposition classification.

Get _id from a record returned by POST /v1/ediTransactions/query.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
_ediTransactionIdstring · objectIdRequired

The EDI transaction ID.

Example: 6a0377fcbfecf34a362e9be2
Responses
200

MDN metadata for the transaction.

application/json

AS2 Message Disposition Notification (MDN) metadata for an EDI transaction. The server reads the stored MDN artifact and returns the raw status message body together with a parsed disposition classification.

mdnStatusMessagestringRequired

Full raw MDN body text, including the MIME headers and the Disposition: line from the disposition-notification part.

mdnTimestampstring · date-timeRequired

Timestamp of the stored MDN artifact — its last-modified time when available, otherwise the transaction's lastModified.

Example: 2026-05-21T21:32:52.000Z
mdnDispositionstring · enumRequired

Disposition classification parsed from the modifier on the Disposition: header in mdnStatusMessage (the status token after the disposition type, e.g. processed or processed/error).

Possible values:
get/v1/ediTransactions/{_ediTransactionId}/mdn
GET /v1/ediTransactions/{_ediTransactionId}/mdn HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "mdnStatusMessage": "------70B008BC93BAB50F580B205FC5CEF948\nContent-Type: multipart/report;Report-Type=disposition-notification;boundary=yFK5DJ9f\n\n--yFK5DJ9f\nContent-Type: text/plain\nContent-Transfer-Encoding: 7bit\n\nThe EDI message has been received successfully.\n--yFK5DJ9f\nContent-Type: message/disposition-notification\nContent-Transfer-Encoding: 7bit\n\nReporting-UA: integrator.io\nOriginal-Recipient: rfc822; partner-as2-id\nFinal-Recipient: rfc822; partner-as2-id\nOriginal-Message-ID: <message-id@integrator.io>\nDisposition: automatic-action/MDN-sent-automatically;processed\nReceived-Content-MIC: jVA1LAPZqJjQBEs/yBmHe/T3wwqMlJlh4gpLSdjO9U8=, sha256\n\n--yFK5DJ9f--",
  "mdnTimestamp": "2026-05-21T21:32:52.000Z",
  "mdnDisposition": "processed"
}

Download an EDI file

get
/v1/edi/documents/{documentNumber}/ediFile

Downloads the raw EDI file content for a specific document number.

The documentType query parameter is required and must be the EDI document type code — for X12, the numeric transaction-set ID as a string (e.g. 850, 810, 856, 997); for EDIFACT, the UNH01 message type (e.g. ORDERS, INVOIC, DESADV, CONTRL).

The server uses documentType + documentNumber together to locate the transaction record and return the associated raw EDI file.

Get documentNumber and documentType from a transaction record returned by POST /v1/ediTransactions/query. Alternatively, download via POST /v1/jobs/{_flowJobId}/files/signedURL using the s3Key from the transaction record.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
documentNumberstringRequired

The business document number that identifies the EDI transaction (e.g. a purchase-order number from an 850's BEG03). Matches the documentNumber field on an EDI transaction record.

Example: PO03302026A
Query parameters
documentTypestringRequired

The EDI document type code. For X12, this is the numeric transaction-set ID as a string (e.g. 850, 810, 856, 997). For EDIFACT, this is the UNH01 message type (e.g. ORDERS, INVOIC, DESADV, CONTRL).

Values like X12 or EDIFACT are not valid here — those identify the EDI standard family, not the document type.

Example: {"value":"850","summary":"X12 Purchase Order"}
Responses
200

Raw EDI file content.

text/plain
stringOptional
get/v1/edi/documents/{documentNumber}/ediFile
GET /v1/edi/documents/{documentNumber}/ediFile?documentType=text HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
text

Last updated

Was this helpful?