> For the complete documentation index, see [llms.txt](https://developer.celigo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.celigo.com/api/api-reference/edi-profiles.md).

# EDI Profiles

API for managing EDI profiles in Celigo.

EDI profiles define the interchange envelope configuration for EDI X12 and EDIFACT document exchange between trading partners. They contain the control fields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver, standards versions, and interchange control settings.

### EDI profile schema

## The EDIProfile object

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"components":{"schemas":{"EDIProfile":{"type":"object","required":["_id","name","fileType","lastModified"],"description":"EDI profile with metadata and interchange control fields.","allOf":[{"$ref":"#/components/schemas/EDIProfileBase"},{"$ref":"#/components/schemas/ResourceResponse"},{"type":"object","properties":{"_templateId":{"type":"string","format":"objectId","readOnly":true,"description":"Template this EDI profile was installed from."},"_sourceId":{"type":"string","format":"objectId","readOnly":true,"description":"Original profile ID when cloned or installed from a template."}}}]},"EDIProfileBase":{"type":"object","description":"Writable EDI profile fields shared by the request and response schemas.","properties":{"name":{"type":"string","description":"Human-readable name for the EDI profile"},"description":{"type":"string","description":"Detailed description of the EDI profile's purpose"},"fileType":{"type":"string","enum":["edix12","edifact"],"description":"The EDI standard this profile is configured for. Immutable after creation."},"tpInterchangeId":{"type":"string","description":"Trading partner's interchange identifier (ISA06 for X12, UNB sender/receiver ID for EDIFACT)"},"myInterchangeId":{"type":"string","description":"Your (sender/receiver) interchange identifier"},"controlNumber":{"type":"integer","minimum":1,"maximum":999999999,"default":1,"description":"Current interchange control number. Incremented with each interchange sent."},"isa01":{"type":"string","enum":["00","01","02","03","04","05"],"description":"X12 ISA01 — Authorization Information Qualifier."},"isa02":{"type":"string","description":"X12 ISA02 - Authorization Information (10 characters)"},"isa03":{"type":"string","enum":["00","01"],"description":"X12 ISA03 — Security Information Qualifier."},"isa04":{"type":"string","description":"X12 ISA04 - Security Information (10 characters)"},"tpIdQualifier":{"type":"string","description":"Trading partner ID qualifier.\n\nFor X12 (ISA05/ISA07): Values include 01 (DUNS), 08 (UCC EDI), 12 (phone),\n14 (DUNS+4), ZZ (mutually defined), etc.\n\nFor EDIFACT: Values include 14 (EAN), ZZZ (mutually defined), etc.\n"},"myIdQualifier":{"type":"string","description":"Your (sender/receiver) ID qualifier. Same enum as tpIdQualifier.\n"},"isa11":{"type":"string","description":"X12 ISA11 - Repetition Separator (or Interchange Control Standards Identifier\nin older versions). Single character.\n"},"isa12":{"type":"string","description":"X12 ISA12 - Interchange Control Version Number (5 characters)"},"isa14":{"type":"string","enum":["0","1"],"description":"X12 ISA14 — Acknowledgment Requested."},"isa15":{"type":"string","enum":["P","T"],"description":"X12 ISA15 — Interchange Usage Indicator."},"isa16":{"type":"string","description":"X12 ISA16 - Component Element Separator. Single character."},"tpGroupId":{"type":"string","description":"X12 GS02 - Trading partner's application sender/receiver code"},"myGroupId":{"type":"string","description":"X12 GS03 - Your application sender/receiver code"},"gs07":{"type":"string","enum":["X","T"],"description":"X12 GS07 — Responsible Agency Code."},"gs08":{"type":"string","description":"X12 GS08 - Version/Release/Industry Identifier Code"},"unb010_0001":{"type":"string","enum":["UNOA","UNOB","UNOC","UNOD","UNOE","UNOF"],"description":"EDIFACT UNB S001/0001 - Syntax Identifier.\nIdentifies the character set used in the interchange.\n"},"unb010_0002":{"type":"string","enum":["1","2","3"],"description":"EDIFACT UNB S001/0002 - Syntax Version Number.\n"},"versionNumber":{"type":"string","description":"EDIFACT message version number (e.g., \"D\" for directory).\n"},"releaseNumber":{"type":"string","description":"EDIFACT message release number.\n"},"controllingAgency":{"type":"string","description":"EDIFACT controlling agency code.\n"}}},"ResourceResponse":{"type":"object","description":"Response","properties":{"_id":{"type":"string","format":"objectId","readOnly":true,"description":"Unique identifier for the resource. Format is a 24-character hexadecimal string."},"createdAt":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was created. Set automatically and cannot be modified."},"lastModified":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was last updated. Changes whenever any property is modified."},"deletedAt":{"type":["string","null"],"format":"date-time","readOnly":true,"description":"Timestamp when the resource was soft-deleted. When null or absent, the resource is active."}},"required":["_id"]}}}}
```

## List EDI profiles

> Returns all EDI profiles configured in the account.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"EDIProfile":{"type":"object","required":["_id","name","fileType","lastModified"],"description":"EDI profile with metadata and interchange control fields.","allOf":[{"$ref":"#/components/schemas/EDIProfileBase"},{"$ref":"#/components/schemas/ResourceResponse"},{"type":"object","properties":{"_templateId":{"type":"string","format":"objectId","readOnly":true,"description":"Template this EDI profile was installed from."},"_sourceId":{"type":"string","format":"objectId","readOnly":true,"description":"Original profile ID when cloned or installed from a template."}}}]},"EDIProfileBase":{"type":"object","description":"Writable EDI profile fields shared by the request and response schemas.","properties":{"name":{"type":"string","description":"Human-readable name for the EDI profile"},"description":{"type":"string","description":"Detailed description of the EDI profile's purpose"},"fileType":{"type":"string","enum":["edix12","edifact"],"description":"The EDI standard this profile is configured for. Immutable after creation."},"tpInterchangeId":{"type":"string","description":"Trading partner's interchange identifier (ISA06 for X12, UNB sender/receiver ID for EDIFACT)"},"myInterchangeId":{"type":"string","description":"Your (sender/receiver) interchange identifier"},"controlNumber":{"type":"integer","minimum":1,"maximum":999999999,"default":1,"description":"Current interchange control number. Incremented with each interchange sent."},"isa01":{"type":"string","enum":["00","01","02","03","04","05"],"description":"X12 ISA01 — Authorization Information Qualifier."},"isa02":{"type":"string","description":"X12 ISA02 - Authorization Information (10 characters)"},"isa03":{"type":"string","enum":["00","01"],"description":"X12 ISA03 — Security Information Qualifier."},"isa04":{"type":"string","description":"X12 ISA04 - Security Information (10 characters)"},"tpIdQualifier":{"type":"string","description":"Trading partner ID qualifier.\n\nFor X12 (ISA05/ISA07): Values include 01 (DUNS), 08 (UCC EDI), 12 (phone),\n14 (DUNS+4), ZZ (mutually defined), etc.\n\nFor EDIFACT: Values include 14 (EAN), ZZZ (mutually defined), etc.\n"},"myIdQualifier":{"type":"string","description":"Your (sender/receiver) ID qualifier. Same enum as tpIdQualifier.\n"},"isa11":{"type":"string","description":"X12 ISA11 - Repetition Separator (or Interchange Control Standards Identifier\nin older versions). Single character.\n"},"isa12":{"type":"string","description":"X12 ISA12 - Interchange Control Version Number (5 characters)"},"isa14":{"type":"string","enum":["0","1"],"description":"X12 ISA14 — Acknowledgment Requested."},"isa15":{"type":"string","enum":["P","T"],"description":"X12 ISA15 — Interchange Usage Indicator."},"isa16":{"type":"string","description":"X12 ISA16 - Component Element Separator. Single character."},"tpGroupId":{"type":"string","description":"X12 GS02 - Trading partner's application sender/receiver code"},"myGroupId":{"type":"string","description":"X12 GS03 - Your application sender/receiver code"},"gs07":{"type":"string","enum":["X","T"],"description":"X12 GS07 — Responsible Agency Code."},"gs08":{"type":"string","description":"X12 GS08 - Version/Release/Industry Identifier Code"},"unb010_0001":{"type":"string","enum":["UNOA","UNOB","UNOC","UNOD","UNOE","UNOF"],"description":"EDIFACT UNB S001/0001 - Syntax Identifier.\nIdentifies the character set used in the interchange.\n"},"unb010_0002":{"type":"string","enum":["1","2","3"],"description":"EDIFACT UNB S001/0002 - Syntax Version Number.\n"},"versionNumber":{"type":"string","description":"EDIFACT message version number (e.g., \"D\" for directory).\n"},"releaseNumber":{"type":"string","description":"EDIFACT message release number.\n"},"controllingAgency":{"type":"string","description":"EDIFACT controlling agency code.\n"}}},"ResourceResponse":{"type":"object","description":"Response","properties":{"_id":{"type":"string","format":"objectId","readOnly":true,"description":"Unique identifier for the resource. Format is a 24-character hexadecimal string."},"createdAt":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was created. Set automatically and cannot be modified."},"lastModified":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was last updated. Changes whenever any property is modified."},"deletedAt":{"type":["string","null"],"format":"date-time","readOnly":true,"description":"Timestamp when the resource was soft-deleted. When null or absent, the resource is active."}},"required":["_id"]}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}}}},"paths":{"/v1/ediprofiles":{"get":{"summary":"List EDI profiles","description":"Returns all EDI profiles configured in the account.","operationId":"listEDIProfiles","tags":["EDI Profiles"],"responses":{"200":{"description":"Successfully retrieved list of EDI profiles","headers":{"Link":{"description":"RFC-5988 pagination links. When more pages remain, includes a `<...>; rel=\"next\"` entry;\nabsent on the final page.\n","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/EDIProfile"}}}}},"204":{"description":"No EDI profiles exist in the account"},"401":{"$ref":"#/components/responses/401-unauthorized"}}}}}}
```

## Create an EDI profile

> Creates a new EDI profile for EDI X12 or EDIFACT document exchange.\
> \`fileType\` is immutable after creation. Only \`name\` and \`fileType\`\
> are required; all ISA/GS/UNB control fields default to safe values.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Request":{"type":"object","description":"EDI profile configuration. The `fileType` field determines which set of\ninterchange control fields apply (X12 ISA/GS or EDIFACT UNB) and is\nimmutable after creation. Fields for the other standard are ignored.","required":["name","fileType"],"allOf":[{"$ref":"#/components/schemas/EDIProfileBase"}]},"EDIProfileBase":{"type":"object","description":"Writable EDI profile fields shared by the request and response schemas.","properties":{"name":{"type":"string","description":"Human-readable name for the EDI profile"},"description":{"type":"string","description":"Detailed description of the EDI profile's purpose"},"fileType":{"type":"string","enum":["edix12","edifact"],"description":"The EDI standard this profile is configured for. Immutable after creation."},"tpInterchangeId":{"type":"string","description":"Trading partner's interchange identifier (ISA06 for X12, UNB sender/receiver ID for EDIFACT)"},"myInterchangeId":{"type":"string","description":"Your (sender/receiver) interchange identifier"},"controlNumber":{"type":"integer","minimum":1,"maximum":999999999,"default":1,"description":"Current interchange control number. Incremented with each interchange sent."},"isa01":{"type":"string","enum":["00","01","02","03","04","05"],"description":"X12 ISA01 — Authorization Information Qualifier."},"isa02":{"type":"string","description":"X12 ISA02 - Authorization Information (10 characters)"},"isa03":{"type":"string","enum":["00","01"],"description":"X12 ISA03 — Security Information Qualifier."},"isa04":{"type":"string","description":"X12 ISA04 - Security Information (10 characters)"},"tpIdQualifier":{"type":"string","description":"Trading partner ID qualifier.\n\nFor X12 (ISA05/ISA07): Values include 01 (DUNS), 08 (UCC EDI), 12 (phone),\n14 (DUNS+4), ZZ (mutually defined), etc.\n\nFor EDIFACT: Values include 14 (EAN), ZZZ (mutually defined), etc.\n"},"myIdQualifier":{"type":"string","description":"Your (sender/receiver) ID qualifier. Same enum as tpIdQualifier.\n"},"isa11":{"type":"string","description":"X12 ISA11 - Repetition Separator (or Interchange Control Standards Identifier\nin older versions). Single character.\n"},"isa12":{"type":"string","description":"X12 ISA12 - Interchange Control Version Number (5 characters)"},"isa14":{"type":"string","enum":["0","1"],"description":"X12 ISA14 — Acknowledgment Requested."},"isa15":{"type":"string","enum":["P","T"],"description":"X12 ISA15 — Interchange Usage Indicator."},"isa16":{"type":"string","description":"X12 ISA16 - Component Element Separator. Single character."},"tpGroupId":{"type":"string","description":"X12 GS02 - Trading partner's application sender/receiver code"},"myGroupId":{"type":"string","description":"X12 GS03 - Your application sender/receiver code"},"gs07":{"type":"string","enum":["X","T"],"description":"X12 GS07 — Responsible Agency Code."},"gs08":{"type":"string","description":"X12 GS08 - Version/Release/Industry Identifier Code"},"unb010_0001":{"type":"string","enum":["UNOA","UNOB","UNOC","UNOD","UNOE","UNOF"],"description":"EDIFACT UNB S001/0001 - Syntax Identifier.\nIdentifies the character set used in the interchange.\n"},"unb010_0002":{"type":"string","enum":["1","2","3"],"description":"EDIFACT UNB S001/0002 - Syntax Version Number.\n"},"versionNumber":{"type":"string","description":"EDIFACT message version number (e.g., \"D\" for directory).\n"},"releaseNumber":{"type":"string","description":"EDIFACT message release number.\n"},"controllingAgency":{"type":"string","description":"EDIFACT controlling agency code.\n"}}},"EDIProfile":{"type":"object","required":["_id","name","fileType","lastModified"],"description":"EDI profile with metadata and interchange control fields.","allOf":[{"$ref":"#/components/schemas/EDIProfileBase"},{"$ref":"#/components/schemas/ResourceResponse"},{"type":"object","properties":{"_templateId":{"type":"string","format":"objectId","readOnly":true,"description":"Template this EDI profile was installed from."},"_sourceId":{"type":"string","format":"objectId","readOnly":true,"description":"Original profile ID when cloned or installed from a template."}}}]},"ResourceResponse":{"type":"object","description":"Response","properties":{"_id":{"type":"string","format":"objectId","readOnly":true,"description":"Unique identifier for the resource. Format is a 24-character hexadecimal string."},"createdAt":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was created. Set automatically and cannot be modified."},"lastModified":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was last updated. Changes whenever any property is modified."},"deletedAt":{"type":["string","null"],"format":"date-time","readOnly":true,"description":"Timestamp when the resource was soft-deleted. When null or absent, the resource is active."}},"required":["_id"]},"Error":{"type":"object","description":"Standard error response envelope returned by integrator.io APIs.","properties":{"errors":{"type":"array","description":"List of errors that occurred while processing the request.","items":{"type":"object","properties":{"code":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Machine-readable error code. Usually a string like\n`invalid_ref`, `missing_required_field`, or `unauthorized`;\nmay be an **integer** when the error mirrors an upstream HTTP\nstatus (e.g. `500`) — most commonly returned by connection-ping\nand adaptor-proxy responses."},"message":{"type":"string","description":"Human-readable description of the error."},"field":{"type":"string","description":"Optional pointer to the document field that caused the error.\nUsed by structural validation errors (`missing_required_field`,\n`invalid_ref`) to indicate which field is at fault\n(e.g. `_id`, `type`, `http.baseURI`)."},"source":{"type":"string","description":"Optional origin layer for the error — e.g. `application` when\nthe error came from the remote system the adaptor called,\n`connector` when the adaptor itself rejected the request."}},"required":["message"]}}},"required":["errors"]}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}},"422-unprocessable-entity":{"description":"Unprocessable entity. The request was well-formed but was unable to be followed due to semantic errors.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/v1/ediprofiles":{"post":{"summary":"Create an EDI profile","description":"Creates a new EDI profile for EDI X12 or EDIFACT document exchange.\n`fileType` is immutable after creation. Only `name` and `fileType`\nare required; all ISA/GS/UNB control fields default to safe values.","operationId":"createEDIProfile","tags":["EDI Profiles"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"responses":{"201":{"description":"EDI profile created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EDIProfile"}}}},"401":{"$ref":"#/components/responses/401-unauthorized"},"422":{"$ref":"#/components/responses/422-unprocessable-entity"}}}}}}
```

## Get an EDI profile

> Returns a specific EDI profile.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"EDIProfile":{"type":"object","required":["_id","name","fileType","lastModified"],"description":"EDI profile with metadata and interchange control fields.","allOf":[{"$ref":"#/components/schemas/EDIProfileBase"},{"$ref":"#/components/schemas/ResourceResponse"},{"type":"object","properties":{"_templateId":{"type":"string","format":"objectId","readOnly":true,"description":"Template this EDI profile was installed from."},"_sourceId":{"type":"string","format":"objectId","readOnly":true,"description":"Original profile ID when cloned or installed from a template."}}}]},"EDIProfileBase":{"type":"object","description":"Writable EDI profile fields shared by the request and response schemas.","properties":{"name":{"type":"string","description":"Human-readable name for the EDI profile"},"description":{"type":"string","description":"Detailed description of the EDI profile's purpose"},"fileType":{"type":"string","enum":["edix12","edifact"],"description":"The EDI standard this profile is configured for. Immutable after creation."},"tpInterchangeId":{"type":"string","description":"Trading partner's interchange identifier (ISA06 for X12, UNB sender/receiver ID for EDIFACT)"},"myInterchangeId":{"type":"string","description":"Your (sender/receiver) interchange identifier"},"controlNumber":{"type":"integer","minimum":1,"maximum":999999999,"default":1,"description":"Current interchange control number. Incremented with each interchange sent."},"isa01":{"type":"string","enum":["00","01","02","03","04","05"],"description":"X12 ISA01 — Authorization Information Qualifier."},"isa02":{"type":"string","description":"X12 ISA02 - Authorization Information (10 characters)"},"isa03":{"type":"string","enum":["00","01"],"description":"X12 ISA03 — Security Information Qualifier."},"isa04":{"type":"string","description":"X12 ISA04 - Security Information (10 characters)"},"tpIdQualifier":{"type":"string","description":"Trading partner ID qualifier.\n\nFor X12 (ISA05/ISA07): Values include 01 (DUNS), 08 (UCC EDI), 12 (phone),\n14 (DUNS+4), ZZ (mutually defined), etc.\n\nFor EDIFACT: Values include 14 (EAN), ZZZ (mutually defined), etc.\n"},"myIdQualifier":{"type":"string","description":"Your (sender/receiver) ID qualifier. Same enum as tpIdQualifier.\n"},"isa11":{"type":"string","description":"X12 ISA11 - Repetition Separator (or Interchange Control Standards Identifier\nin older versions). Single character.\n"},"isa12":{"type":"string","description":"X12 ISA12 - Interchange Control Version Number (5 characters)"},"isa14":{"type":"string","enum":["0","1"],"description":"X12 ISA14 — Acknowledgment Requested."},"isa15":{"type":"string","enum":["P","T"],"description":"X12 ISA15 — Interchange Usage Indicator."},"isa16":{"type":"string","description":"X12 ISA16 - Component Element Separator. Single character."},"tpGroupId":{"type":"string","description":"X12 GS02 - Trading partner's application sender/receiver code"},"myGroupId":{"type":"string","description":"X12 GS03 - Your application sender/receiver code"},"gs07":{"type":"string","enum":["X","T"],"description":"X12 GS07 — Responsible Agency Code."},"gs08":{"type":"string","description":"X12 GS08 - Version/Release/Industry Identifier Code"},"unb010_0001":{"type":"string","enum":["UNOA","UNOB","UNOC","UNOD","UNOE","UNOF"],"description":"EDIFACT UNB S001/0001 - Syntax Identifier.\nIdentifies the character set used in the interchange.\n"},"unb010_0002":{"type":"string","enum":["1","2","3"],"description":"EDIFACT UNB S001/0002 - Syntax Version Number.\n"},"versionNumber":{"type":"string","description":"EDIFACT message version number (e.g., \"D\" for directory).\n"},"releaseNumber":{"type":"string","description":"EDIFACT message release number.\n"},"controllingAgency":{"type":"string","description":"EDIFACT controlling agency code.\n"}}},"ResourceResponse":{"type":"object","description":"Response","properties":{"_id":{"type":"string","format":"objectId","readOnly":true,"description":"Unique identifier for the resource. Format is a 24-character hexadecimal string."},"createdAt":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was created. Set automatically and cannot be modified."},"lastModified":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was last updated. Changes whenever any property is modified."},"deletedAt":{"type":["string","null"],"format":"date-time","readOnly":true,"description":"Timestamp when the resource was soft-deleted. When null or absent, the resource is active."}},"required":["_id"]},"Error":{"type":"object","description":"Standard error response envelope returned by integrator.io APIs.","properties":{"errors":{"type":"array","description":"List of errors that occurred while processing the request.","items":{"type":"object","properties":{"code":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Machine-readable error code. Usually a string like\n`invalid_ref`, `missing_required_field`, or `unauthorized`;\nmay be an **integer** when the error mirrors an upstream HTTP\nstatus (e.g. `500`) — most commonly returned by connection-ping\nand adaptor-proxy responses."},"message":{"type":"string","description":"Human-readable description of the error."},"field":{"type":"string","description":"Optional pointer to the document field that caused the error.\nUsed by structural validation errors (`missing_required_field`,\n`invalid_ref`) to indicate which field is at fault\n(e.g. `_id`, `type`, `http.baseURI`)."},"source":{"type":"string","description":"Optional origin layer for the error — e.g. `application` when\nthe error came from the remote system the adaptor called,\n`connector` when the adaptor itself rejected the request."}},"required":["message"]}}},"required":["errors"]}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}},"404-not-found":{"description":"Not found. The requested resource does not exist or is not visible to the caller.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/v1/ediprofiles/{_id}":{"get":{"summary":"Get an EDI profile","description":"Returns a specific EDI profile.","operationId":"getEDIProfileById","tags":["EDI Profiles"],"parameters":[{"name":"_id","in":"path","description":"The unique identifier of the EDI profile","required":true,"schema":{"type":"string","format":"objectId"}}],"responses":{"200":{"description":"EDI profile retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EDIProfile"}}}},"401":{"$ref":"#/components/responses/401-unauthorized"},"404":{"$ref":"#/components/responses/404-not-found"}}}}}}
```

## Update an EDI profile

> Updates an existing EDI profile. \`fileType\` cannot be changed after\
> creation. Omitted fields are cleared to defaults.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Request":{"type":"object","description":"EDI profile configuration. The `fileType` field determines which set of\ninterchange control fields apply (X12 ISA/GS or EDIFACT UNB) and is\nimmutable after creation. Fields for the other standard are ignored.","required":["name","fileType"],"allOf":[{"$ref":"#/components/schemas/EDIProfileBase"}]},"EDIProfileBase":{"type":"object","description":"Writable EDI profile fields shared by the request and response schemas.","properties":{"name":{"type":"string","description":"Human-readable name for the EDI profile"},"description":{"type":"string","description":"Detailed description of the EDI profile's purpose"},"fileType":{"type":"string","enum":["edix12","edifact"],"description":"The EDI standard this profile is configured for. Immutable after creation."},"tpInterchangeId":{"type":"string","description":"Trading partner's interchange identifier (ISA06 for X12, UNB sender/receiver ID for EDIFACT)"},"myInterchangeId":{"type":"string","description":"Your (sender/receiver) interchange identifier"},"controlNumber":{"type":"integer","minimum":1,"maximum":999999999,"default":1,"description":"Current interchange control number. Incremented with each interchange sent."},"isa01":{"type":"string","enum":["00","01","02","03","04","05"],"description":"X12 ISA01 — Authorization Information Qualifier."},"isa02":{"type":"string","description":"X12 ISA02 - Authorization Information (10 characters)"},"isa03":{"type":"string","enum":["00","01"],"description":"X12 ISA03 — Security Information Qualifier."},"isa04":{"type":"string","description":"X12 ISA04 - Security Information (10 characters)"},"tpIdQualifier":{"type":"string","description":"Trading partner ID qualifier.\n\nFor X12 (ISA05/ISA07): Values include 01 (DUNS), 08 (UCC EDI), 12 (phone),\n14 (DUNS+4), ZZ (mutually defined), etc.\n\nFor EDIFACT: Values include 14 (EAN), ZZZ (mutually defined), etc.\n"},"myIdQualifier":{"type":"string","description":"Your (sender/receiver) ID qualifier. Same enum as tpIdQualifier.\n"},"isa11":{"type":"string","description":"X12 ISA11 - Repetition Separator (or Interchange Control Standards Identifier\nin older versions). Single character.\n"},"isa12":{"type":"string","description":"X12 ISA12 - Interchange Control Version Number (5 characters)"},"isa14":{"type":"string","enum":["0","1"],"description":"X12 ISA14 — Acknowledgment Requested."},"isa15":{"type":"string","enum":["P","T"],"description":"X12 ISA15 — Interchange Usage Indicator."},"isa16":{"type":"string","description":"X12 ISA16 - Component Element Separator. Single character."},"tpGroupId":{"type":"string","description":"X12 GS02 - Trading partner's application sender/receiver code"},"myGroupId":{"type":"string","description":"X12 GS03 - Your application sender/receiver code"},"gs07":{"type":"string","enum":["X","T"],"description":"X12 GS07 — Responsible Agency Code."},"gs08":{"type":"string","description":"X12 GS08 - Version/Release/Industry Identifier Code"},"unb010_0001":{"type":"string","enum":["UNOA","UNOB","UNOC","UNOD","UNOE","UNOF"],"description":"EDIFACT UNB S001/0001 - Syntax Identifier.\nIdentifies the character set used in the interchange.\n"},"unb010_0002":{"type":"string","enum":["1","2","3"],"description":"EDIFACT UNB S001/0002 - Syntax Version Number.\n"},"versionNumber":{"type":"string","description":"EDIFACT message version number (e.g., \"D\" for directory).\n"},"releaseNumber":{"type":"string","description":"EDIFACT message release number.\n"},"controllingAgency":{"type":"string","description":"EDIFACT controlling agency code.\n"}}},"EDIProfile":{"type":"object","required":["_id","name","fileType","lastModified"],"description":"EDI profile with metadata and interchange control fields.","allOf":[{"$ref":"#/components/schemas/EDIProfileBase"},{"$ref":"#/components/schemas/ResourceResponse"},{"type":"object","properties":{"_templateId":{"type":"string","format":"objectId","readOnly":true,"description":"Template this EDI profile was installed from."},"_sourceId":{"type":"string","format":"objectId","readOnly":true,"description":"Original profile ID when cloned or installed from a template."}}}]},"ResourceResponse":{"type":"object","description":"Response","properties":{"_id":{"type":"string","format":"objectId","readOnly":true,"description":"Unique identifier for the resource. Format is a 24-character hexadecimal string."},"createdAt":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was created. Set automatically and cannot be modified."},"lastModified":{"type":"string","format":"date-time","readOnly":true,"description":"Timestamp when the resource was last updated. Changes whenever any property is modified."},"deletedAt":{"type":["string","null"],"format":"date-time","readOnly":true,"description":"Timestamp when the resource was soft-deleted. When null or absent, the resource is active."}},"required":["_id"]},"Error":{"type":"object","description":"Standard error response envelope returned by integrator.io APIs.","properties":{"errors":{"type":"array","description":"List of errors that occurred while processing the request.","items":{"type":"object","properties":{"code":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Machine-readable error code. Usually a string like\n`invalid_ref`, `missing_required_field`, or `unauthorized`;\nmay be an **integer** when the error mirrors an upstream HTTP\nstatus (e.g. `500`) — most commonly returned by connection-ping\nand adaptor-proxy responses."},"message":{"type":"string","description":"Human-readable description of the error."},"field":{"type":"string","description":"Optional pointer to the document field that caused the error.\nUsed by structural validation errors (`missing_required_field`,\n`invalid_ref`) to indicate which field is at fault\n(e.g. `_id`, `type`, `http.baseURI`)."},"source":{"type":"string","description":"Optional origin layer for the error — e.g. `application` when\nthe error came from the remote system the adaptor called,\n`connector` when the adaptor itself rejected the request."}},"required":["message"]}}},"required":["errors"]}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}},"404-not-found":{"description":"Not found. The requested resource does not exist or is not visible to the caller.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/v1/ediprofiles/{_id}":{"put":{"summary":"Update an EDI profile","description":"Updates an existing EDI profile. `fileType` cannot be changed after\ncreation. Omitted fields are cleared to defaults.","operationId":"updateEDIProfile","tags":["EDI Profiles"],"parameters":[{"name":"_id","in":"path","description":"The unique identifier of the EDI profile","required":true,"schema":{"type":"string","format":"objectId"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"responses":{"200":{"description":"EDI profile updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EDIProfile"}}}},"401":{"$ref":"#/components/responses/401-unauthorized"},"404":{"$ref":"#/components/responses/404-not-found"}}}}}}
```

## Delete an EDI profile

> Deletes an EDI profile. Soft-deleted and retained for 30 days.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}},"404-not-found":{"description":"Not found. The requested resource does not exist or is not visible to the caller.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422-dependency-conflict":{"description":"The resource has dependents that must be deleted first. Each entry\nin the `errors` array names one blocking resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"Error":{"type":"object","description":"Standard error response envelope returned by integrator.io APIs.","properties":{"errors":{"type":"array","description":"List of errors that occurred while processing the request.","items":{"type":"object","properties":{"code":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Machine-readable error code. Usually a string like\n`invalid_ref`, `missing_required_field`, or `unauthorized`;\nmay be an **integer** when the error mirrors an upstream HTTP\nstatus (e.g. `500`) — most commonly returned by connection-ping\nand adaptor-proxy responses."},"message":{"type":"string","description":"Human-readable description of the error."},"field":{"type":"string","description":"Optional pointer to the document field that caused the error.\nUsed by structural validation errors (`missing_required_field`,\n`invalid_ref`) to indicate which field is at fault\n(e.g. `_id`, `type`, `http.baseURI`)."},"source":{"type":"string","description":"Optional origin layer for the error — e.g. `application` when\nthe error came from the remote system the adaptor called,\n`connector` when the adaptor itself rejected the request."}},"required":["message"]}}},"required":["errors"]}}},"paths":{"/v1/ediprofiles/{_id}":{"delete":{"summary":"Delete an EDI profile","description":"Deletes an EDI profile. Soft-deleted and retained for 30 days.","operationId":"deleteEDIProfile","tags":["EDI Profiles"],"parameters":[{"name":"_id","in":"path","description":"The unique identifier of the EDI profile","required":true,"schema":{"type":"string","format":"objectId"}}],"responses":{"204":{"description":"EDI profile deleted successfully"},"401":{"$ref":"#/components/responses/401-unauthorized"},"404":{"$ref":"#/components/responses/404-not-found"},"422":{"$ref":"#/components/responses/422-dependency-conflict"}}}}}}
```

## List dependencies of an EDI profile

> Returns the set of resources that depend on the specified resource.\
> The response is an object whose keys are dependent-resource types\
> (e.g. \`flows\`, \`imports\`) and whose values are arrays of dependency\
> entries. Returns \`{}\` when no dependents exist, including for\
> well-formatted but nonexistent IDs.

```json
{"openapi":"3.2.0","info":{"title":"EDI Profiles","version":"1.0.0"},"tags":[{"name":"EDI Profiles","description":"API for managing EDI profiles in Celigo.\n\nEDI profiles define the interchange envelope configuration for EDI X12 and\nEDIFACT document exchange between trading partners. They contain the control\nfields (ISA/GS for X12, UNB for EDIFACT) that identify sender/receiver,\nstandards versions, and interchange control settings.\n\n## EDI profile schema\n\n{% openapi-schemas spec=\"ediprofile\" schemas=\"EDIProfile\" grouped=\"true\" %}"}],"servers":[{"url":"https://api.integrator.io","description":"Production (US / default region)"},{"url":"https://api.eu.integrator.io","description":"Production (EU region)"},{"url":"https://api.au.integrator.io","description":"Production (AU region)"},{"url":"https://api.ca.integrator.io","description":"Production (CA region)"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"DependencyResponse":{"type":"object","description":"Map of dependent-resource types to arrays of dependency entries.\nKeys are plural resource type strings (e.g. `flows`, `imports`,\n`connections`). An empty object `{}` means no dependents.\n","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/DependencyEntry"}}},"DependencyEntry":{"type":"object","description":"A single resource that depends on the queried resource.","properties":{"id":{"type":"string","description":"Unique identifier of the dependent resource."},"name":{"type":"string","description":"Display name of the dependent resource."},"paths":{"type":"array","description":"Dot-notation paths within the dependent resource that reference\nthe target resource. `[*]` denotes array elements.","items":{"type":"string"}},"accessLevel":{"type":"string","description":"The caller's access level on the dependent resource."},"dependencyIds":{"type":"object","description":"Map of resource types to arrays of IDs that this dependent\nresource references on the target. Keys are singular or plural\nresource type strings; values are arrays of ID strings.","additionalProperties":{"type":"array","items":{"type":"string"}}}},"required":["id","name","paths","accessLevel","dependencyIds"]}},"responses":{"401-unauthorized":{"description":"Unauthorized. The request lacks a valid bearer token, or the provided token\nfailed to authenticate.\n\nNote: the 401 response is produced by the auth middleware **before** the\nrequest reaches the endpoint handler, so it does **not** follow the\nstandard `{errors: [...]}` envelope. Instead the body is a bare\n`{message: string}` object with no `code`, no `errors` array. Callers\nhandling 401s should key off the HTTP status and the `message` string,\nnot try to destructure an `errors[]`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable description of the auth failure. Known values:\n- `\"Unauthorized\"` — no `Authorization` header on the request.\n- `\"Bearer Authentication Failed\"` — header present but token\n  is invalid, revoked, or expired."}},"required":["message"]}}}}}},"paths":{"/v1/ediprofiles/{_id}/dependencies":{"get":{"operationId":"listEdiProfileDependencies","tags":["EDI Profiles"],"summary":"List dependencies of an EDI profile","description":"Returns the set of resources that depend on the specified resource.\nThe response is an object whose keys are dependent-resource types\n(e.g. `flows`, `imports`) and whose values are arrays of dependency\nentries. Returns `{}` when no dependents exist, including for\nwell-formatted but nonexistent IDs.","parameters":[{"name":"_id","in":"path","required":true,"description":"Resource ID.","schema":{"type":"string","format":"objectId"}}],"responses":{"200":{"description":"Dependency map. Keys are resource-type strings; values are arrays\nof dependency entries. Returns `{}` when no dependents exist.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DependencyResponse"}}}},"401":{"$ref":"#/components/responses/401-unauthorized"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.celigo.com/api/api-reference/edi-profiles.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
