B2BI / Client / test_parsing

test_parsing

B2BI.Client.test_parsing(**kwargs)

Parses the input EDI (electronic data interchange) file. The input file has a file size limit of 250 KB.

See also: AWS API Documentation

Request Syntax

response = client.test_parsing(
    inputFile={
        'bucketName': 'string',
        'key': 'string'
    },
    fileFormat='XML'|'JSON'|'NOT_USED',
    ediType={
        'x12Details': {
            'transactionSet': 'X12_100'|'X12_101'|'X12_102'|'X12_103'|'X12_104'|'X12_105'|'X12_106'|'X12_107'|'X12_108'|'X12_109'|'X12_110'|'X12_111'|'X12_112'|'X12_113'|'X12_120'|'X12_121'|'X12_124'|'X12_125'|'X12_126'|'X12_127'|'X12_128'|'X12_129'|'X12_130'|'X12_131'|'X12_132'|'X12_133'|'X12_135'|'X12_138'|'X12_139'|'X12_140'|'X12_141'|'X12_142'|'X12_143'|'X12_144'|'X12_146'|'X12_147'|'X12_148'|'X12_149'|'X12_150'|'X12_151'|'X12_152'|'X12_153'|'X12_154'|'X12_155'|'X12_157'|'X12_158'|'X12_159'|'X12_160'|'X12_161'|'X12_163'|'X12_170'|'X12_175'|'X12_176'|'X12_179'|'X12_180'|'X12_185'|'X12_186'|'X12_187'|'X12_188'|'X12_189'|'X12_190'|'X12_191'|'X12_194'|'X12_195'|'X12_196'|'X12_197'|'X12_198'|'X12_199'|'X12_200'|'X12_201'|'X12_202'|'X12_203'|'X12_204'|'X12_205'|'X12_206'|'X12_210'|'X12_211'|'X12_212'|'X12_213'|'X12_214'|'X12_215'|'X12_216'|'X12_217'|'X12_218'|'X12_219'|'X12_220'|'X12_222'|'X12_223'|'X12_224'|'X12_225'|'X12_227'|'X12_228'|'X12_240'|'X12_242'|'X12_244'|'X12_245'|'X12_248'|'X12_249'|'X12_250'|'X12_251'|'X12_252'|'X12_255'|'X12_256'|'X12_259'|'X12_260'|'X12_261'|'X12_262'|'X12_263'|'X12_264'|'X12_265'|'X12_266'|'X12_267'|'X12_268'|'X12_269'|'X12_270'|'X12_271'|'X12_272'|'X12_273'|'X12_274'|'X12_275'|'X12_276'|'X12_277'|'X12_278'|'X12_280'|'X12_283'|'X12_284'|'X12_285'|'X12_286'|'X12_288'|'X12_290'|'X12_300'|'X12_301'|'X12_303'|'X12_304'|'X12_309'|'X12_310'|'X12_311'|'X12_312'|'X12_313'|'X12_315'|'X12_317'|'X12_319'|'X12_322'|'X12_323'|'X12_324'|'X12_325'|'X12_326'|'X12_350'|'X12_352'|'X12_353'|'X12_354'|'X12_355'|'X12_356'|'X12_357'|'X12_358'|'X12_361'|'X12_362'|'X12_404'|'X12_410'|'X12_412'|'X12_414'|'X12_417'|'X12_418'|'X12_419'|'X12_420'|'X12_421'|'X12_422'|'X12_423'|'X12_424'|'X12_425'|'X12_426'|'X12_429'|'X12_431'|'X12_432'|'X12_433'|'X12_434'|'X12_435'|'X12_436'|'X12_437'|'X12_440'|'X12_451'|'X12_452'|'X12_453'|'X12_455'|'X12_456'|'X12_460'|'X12_463'|'X12_466'|'X12_468'|'X12_470'|'X12_475'|'X12_485'|'X12_486'|'X12_490'|'X12_492'|'X12_494'|'X12_500'|'X12_501'|'X12_503'|'X12_504'|'X12_511'|'X12_517'|'X12_521'|'X12_527'|'X12_536'|'X12_540'|'X12_561'|'X12_567'|'X12_568'|'X12_601'|'X12_602'|'X12_620'|'X12_625'|'X12_650'|'X12_715'|'X12_753'|'X12_754'|'X12_805'|'X12_806'|'X12_810'|'X12_811'|'X12_812'|'X12_813'|'X12_814'|'X12_815'|'X12_816'|'X12_818'|'X12_819'|'X12_820'|'X12_821'|'X12_822'|'X12_823'|'X12_824'|'X12_826'|'X12_827'|'X12_828'|'X12_829'|'X12_830'|'X12_831'|'X12_832'|'X12_833'|'X12_834'|'X12_835'|'X12_836'|'X12_837'|'X12_838'|'X12_839'|'X12_840'|'X12_841'|'X12_842'|'X12_843'|'X12_844'|'X12_845'|'X12_846'|'X12_847'|'X12_848'|'X12_849'|'X12_850'|'X12_851'|'X12_852'|'X12_853'|'X12_854'|'X12_855'|'X12_856'|'X12_857'|'X12_858'|'X12_859'|'X12_860'|'X12_861'|'X12_862'|'X12_863'|'X12_864'|'X12_865'|'X12_866'|'X12_867'|'X12_868'|'X12_869'|'X12_870'|'X12_871'|'X12_872'|'X12_873'|'X12_874'|'X12_875'|'X12_876'|'X12_877'|'X12_878'|'X12_879'|'X12_880'|'X12_881'|'X12_882'|'X12_883'|'X12_884'|'X12_885'|'X12_886'|'X12_887'|'X12_888'|'X12_889'|'X12_891'|'X12_893'|'X12_894'|'X12_895'|'X12_896'|'X12_920'|'X12_924'|'X12_925'|'X12_926'|'X12_928'|'X12_940'|'X12_943'|'X12_944'|'X12_945'|'X12_947'|'X12_980'|'X12_990'|'X12_993'|'X12_996'|'X12_997'|'X12_998'|'X12_999'|'X12_270_X279'|'X12_271_X279'|'X12_275_X210'|'X12_275_X211'|'X12_276_X212'|'X12_277_X212'|'X12_277_X214'|'X12_277_X364'|'X12_278_X217'|'X12_820_X218'|'X12_820_X306'|'X12_824_X186'|'X12_834_X220'|'X12_834_X307'|'X12_834_X318'|'X12_835_X221'|'X12_837_X222'|'X12_837_X223'|'X12_837_X224'|'X12_837_X291'|'X12_837_X292'|'X12_837_X298'|'X12_999_X231',
            'version': 'VERSION_4010'|'VERSION_4030'|'VERSION_4050'|'VERSION_4060'|'VERSION_5010'|'VERSION_5010_HIPAA'
        }
    },
    advancedOptions={
        'x12': {
            'splitOptions': {
                'splitBy': 'NONE'|'TRANSACTION'
            },
            'validationOptions': {
                'validationRules': [
                    {
                        'codeListValidationRule': {
                            'elementId': 'string',
                            'codesToAdd': [
                                'string',
                            ],
                            'codesToRemove': [
                                'string',
                            ]
                        },
                        'elementLengthValidationRule': {
                            'elementId': 'string',
                            'maxLength': 123,
                            'minLength': 123
                        },
                        'elementRequirementValidationRule': {
                            'elementPosition': 'string',
                            'requirement': 'OPTIONAL'|'MANDATORY'
                        }
                    },
                ]
            }
        }
    }
)
Parameters:
  • inputFile (dict) –

    [REQUIRED]

    Specifies an S3Location object, which contains the Amazon S3 bucket and prefix for the location of the input file.

    • bucketName (string) –

      Specifies the name of the Amazon S3 bucket.

    • key (string) –

      Specifies the Amazon S3 key for the file location.

  • fileFormat (string) –

    [REQUIRED]

    Specifies that the currently supported file formats for EDI transformations are JSON and XML.

  • ediType (dict) –

    [REQUIRED]

    Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: x12Details.

    • x12Details (dict) –

      Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

      • transactionSet (string) –

        Returns an enumerated type where each value identifies an X12 transaction set. Transaction sets are maintained by the X12 Accredited Standards Committee.

      • version (string) –

        Returns the version to use for the specified X12 transaction set.

  • advancedOptions (dict) –

    Specifies advanced options for parsing the input EDI file. These options allow for more granular control over the parsing process, including split options for X12 files.

    • x12 (dict) –

      A structure that contains X12-specific advanced options, such as split options for processing X12 EDI files.

      • splitOptions (dict) –

        Specifies options for splitting X12 EDI files. These options control how large X12 files are divided into smaller, more manageable units.

        • splitBy (string) – [REQUIRED]

          Specifies the method used to split X12 EDI files. Valid values include TRANSACTION (split by individual transaction sets), or NONE (no splitting).

      • validationOptions (dict) –

        Specifies validation options for X12 EDI processing. These options control how validation rules are applied during EDI document processing, including custom validation rules for element length constraints, code list validations, and element requirement checks.

        • validationRules (list) –

          Specifies a list of validation rules to apply during EDI document processing. These rules can include code list modifications, element length constraints, and element requirement changes.

          • (dict) –

            Represents a single validation rule that can be applied during X12 EDI processing. This is a union type that can contain one of several specific validation rule types: code list validation rules for modifying allowed element codes, element length validation rules for enforcing custom length constraints, or element requirement validation rules for changing mandatory/optional status. Each validation rule targets specific aspects of EDI document validation to ensure compliance with trading partner requirements and business rules.

            Note

            This is a Tagged Union structure. Only one of the following top level keys can be set: codeListValidationRule, elementLengthValidationRule, elementRequirementValidationRule.

            • codeListValidationRule (dict) –

              Specifies a code list validation rule that modifies the allowed code values for a specific X12 element. This rule enables you to customize which codes are considered valid for an element, allowing for trading partner-specific code requirements.

              • elementId (string) – [REQUIRED]

                Specifies the four-digit element ID to which the code list modifications apply. This identifies which X12 element will have its allowed code values modified.

              • codesToAdd (list) –

                Specifies a list of code values to add to the element’s allowed values. These codes will be considered valid for the specified element in addition to the standard codes defined by the X12 specification.

                • (string) –

              • codesToRemove (list) –

                Specifies a list of code values to remove from the element’s allowed values. These codes will be considered invalid for the specified element, even if they are part of the standard codes defined by the X12 specification.

                • (string) –

            • elementLengthValidationRule (dict) –

              Specifies an element length validation rule that defines custom length constraints for a specific X12 element. This rule allows you to enforce minimum and maximum length requirements that may differ from the standard X12 specification.

              • elementId (string) – [REQUIRED]

                Specifies the four-digit element ID to which the length constraints will be applied. This identifies which X12 element will have its length requirements modified.

              • maxLength (integer) – [REQUIRED]

                Specifies the maximum allowed length for the identified element. This value must be between 1 and 200 characters and defines the upper limit for the element’s content length.

              • minLength (integer) – [REQUIRED]

                Specifies the minimum required length for the identified element. This value must be between 1 and 200 characters and defines the lower limit for the element’s content length.

            • elementRequirementValidationRule (dict) –

              Specifies an element requirement validation rule that modifies whether a specific X12 element is required or optional within a segment. This rule provides flexibility to accommodate different trading partner requirements for element presence.

              • elementPosition (string) – [REQUIRED]

                Specifies the position of the element within an X12 segment for which the requirement status will be modified. The format follows the pattern of segment identifier followed by element position (e.g., “ST-01” for the first element of the ST segment).

              • requirement (string) – [REQUIRED]

                Specifies the requirement status for the element at the specified position. Valid values are OPTIONAL (the element may be omitted) or MANDATORY (the element must be present).

Return type:

dict

Returns:

Response Syntax

{
    'parsedFileContent': 'string',
    'parsedSplitFileContents': [
        'string',
    ],
    'validationMessages': [
        'string',
    ]
}

Response Structure

  • (dict) –

    • parsedFileContent (string) –

      Returns the contents of the input file being tested, parsed according to the specified EDI (electronic data interchange) type.

    • parsedSplitFileContents (list) –

      Returns an array of parsed file contents when the input file is split according to the specified split options. Each element in the array represents a separate split file’s parsed content.

      • (string) –

    • validationMessages (list) –

      Returns an array of validation messages generated during EDI validation. These messages provide detailed information about validation errors, warnings, or confirmations based on the configured X12 validation rules such as element length constraints, code list validations, and element requirement checks. This field is populated when the TestParsing API validates EDI documents.

      • (string) –

Exceptions