Ack X12

  • Path: /x12/ack
  • HTTP Verb: POST
  • Required API Key: Ocp-Apim-Subscription-Key (Get API Key)
  • Request Content-Type: application/json
  • Request limit: 28.6 MB
  • Response Content-Type: application/json



Generates an X12Interchange object that contains the functional/implementation and/or technical acknowledment(s) for the requested X12Interchange. The resulting X12Interchange uses the ISA and GS of the request, with the sender and receiver id/qualifier exchanged. The interchange reference number is set to 1.



  • 200: Success
  • 400: When the X12Interchange has an invalid JSON structure.
  • 500: Something went wrong on our end. Please report at



basicSyntax boolean

All data elements with alpha (A) or alphanumeric (AN) data types are validated against a syntax set of allowed characters. The default syntax set is the Extended, hence the default for this parameter is false. By setting this to true, validation will use the Basic syntax set.

Extended Basic
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!&()*+,-./:;?= '"%@[]_{}\|<>~#$

syntaxSet string

In case you need to validate against a syntax set, different than Basic and Extended, populate this filed with all of the allowed symbols, url-escaped.

detectDuplicates boolean

If you need to detect duplicates as in functional groups or transactions with the same reference number, set this flag to true. The default is false.

tranRefNumber integer

The default is 1. Set this to whatever the 997 or 999 X12Interchange.ST.TransactionSetControlNumber_02 needs to be. In case there are multiple acknowledgments (for multiple functional groups), this will be starting reference number and every subsequent acknowledgment will have the previous reference number incremented with 1.

interchangeRefNumber integer

The default is 1. Set this to whatever the 997 or 999 X12Interchange.ISA.InterchangeControlNumber_13 needs to be.

ackForValidTrans boolean

The default is false. Set this to true if you need AK2 loops included for all valid transaction as well. By default AK2 loops are generated only for invalid transactions.

batchAcks boolean

The default is true. Set this to false if you need to generate separate X12Interchange for each acknowledgment. By default all acknowledgments are batched in the same X12Interchange.

technicalAck enumeration

The default technical acknowledgment TA1 is generated according to X12Interchange.ISA.AcknowledgementRequested_14. You can either enforce it to always generate TA1s or supress it to never generate any TA1s. This will override the flag in X12Interchange.ISA.AcknowledgementRequested_14.

The available values are:

Value Description
enforce Always generate TA1
suppress Never generate TA1
default Generate TA1 according to AcknowledgementRequested_14

ack enumeration

The default value is 997. The type of acknowledgment being generated. Set this to 999 if you need to generate an implementation instead of functional acknowledgment.

The available values are:

Value Description
997 Generate 997 functional acknowledgment
999 Generate 999 implementation acknowledgment

ak901isP boolean

The value of the AK9's first element. By default it is "E". Set this to true if you want this value to be "P" instead.



Go to examples and Swagger test

Was this article helpful?
0 out of 0 found this helpful