curl --request POST \
--url 'https://edi.stateset.com/v1/partners/{id}/guide/rollback/{version}' \
--header 'Authorization: Bearer YOUR_API_KEY'
{
"author": "string",
"created_at": "2026-07-24T12:00:00Z",
"note": "string",
"overlay": {
"element_overrides": [
{
"element": null,
"segment": null,
"transaction_set": null,
"value": null
}
],
"extra_segments": [
{
"elements": null,
"tag": null,
"transaction_set": null
}
]
},
"partner_id": "string",
"tenant_id": "string",
"validation": {
"accepted_inbound": [
"string"
],
"conditional_rules": [
{
"equals": null,
"require_element": null,
"require_segment": null,
"when_element": null,
"when_segment": null
}
],
"count_checks": {},
"element_constraints": [
{
"allowed": null,
"element": null,
"format": null,
"max_len": null,
"min_len": null,
"required": null,
"segment": null
}
],
"required_qualified": {},
"required_references": {},
"required_segments": {},
"segment_cardinality": {}
},
"version": 1
}
Rolls a partner's guide back to an earlier version: restores that version's
validation + overlay onto the partner and records the restore as a new version (history is append-only, never rewritten).
POST
/
v1
/
partners
/
{id}
/
guide
/
rollback
/
{version}
curl --request POST \
--url 'https://edi.stateset.com/v1/partners/{id}/guide/rollback/{version}' \
--header 'Authorization: Bearer YOUR_API_KEY'
{
"author": "string",
"created_at": "2026-07-24T12:00:00Z",
"note": "string",
"overlay": {
"element_overrides": [
{
"element": null,
"segment": null,
"transaction_set": null,
"value": null
}
],
"extra_segments": [
{
"elements": null,
"tag": null,
"transaction_set": null
}
]
},
"partner_id": "string",
"tenant_id": "string",
"validation": {
"accepted_inbound": [
"string"
],
"conditional_rules": [
{
"equals": null,
"require_element": null,
"require_segment": null,
"when_element": null,
"when_segment": null
}
],
"count_checks": {},
"element_constraints": [
{
"allowed": null,
"element": null,
"format": null,
"max_len": null,
"min_len": null,
"required": null,
"segment": null
}
],
"required_qualified": {},
"required_references": {},
"required_segments": {},
"segment_cardinality": {}
},
"version": 1
}
validation + overlay onto the partner and records the restore as a new
version (history is append-only, never rewritten).
Path parameters
string
required
Partner ID
integer (int32)
required
Version to restore
Response
GuideSnapshot
string
required
Who captured it (
admin, partner:{id}).string (date-time)
required
string
object
Show overlay
Show overlay
ElementOverride[]
string
required
string
required
PartnerValidation
required
Show PartnerValidation
Show PartnerValidation
string[]
If non-empty, inbound transaction sets not in this list are rejected
(e.g.
['850', '860'] for a partner that only sends orders).ConditionalRule[]
If-then rules, e.g. ‘when BEG02 is SA, a DTM segment is required’.
object
Count-balancing rules per inbound transaction set —
CTT01 must equal
the number of PO1 segments and friends. Checked only when the counter
segment is present (pair with required_segments to mandate it).ElementConstraint[]
Element-level constraints applied to matching segments anywhere in an
inbound document — e.g. pin PO1-03 (unit of measure) to an allowed set.
Show ElementConstraint
Show ElementConstraint
string[]
If non-empty, the element must be one of these values.
integer
required
1-based element position, e.g.
3 for the PO1 unit of measure.object
integer
Maximum length (in characters) when the element is present.
integer
Minimum length (in characters) when the element is present.
boolean
If true, the element must be present (non-empty).
string
required
Segment tag, e.g.
PO1.object
Qualified-segment requirements per inbound transaction set — the guide
staple
required_references can’t reach beyond REF: ‘a DTM*002
(delivery date) must be present’, ‘an N1 loop with N101=ST’. The '*'
key applies to every set.object
REF qualifiers that must be present per inbound transaction set, e.g.
{'850': ['DP']} to require a department-number reference on every PO.object
Segment tags that must be present per inbound transaction set, e.g.
{'850': ['DTM', 'REF']} to require a date and reference on every PO.
The '*' key applies to every inbound set.object
Occurrence bounds per inbound transaction set, e.g.
{'850': [{'segment': 'BEG', 'min': 1, 'max': 1}]} for ‘exactly one
BEG’ or a guide’s ‘max 200 PO1 lines’. The '*' key applies to every
set; a set-specific rule for the same segment takes precedence.integer (int32)
required
Monotonic version, starting at 1.
Status codes
| Code | Meaning |
|---|---|
200 | New version recording the rollback |
404 | Unknown partner or version |
curl --request POST \
--url 'https://edi.stateset.com/v1/partners/{id}/guide/rollback/{version}' \
--header 'Authorization: Bearer YOUR_API_KEY'
{
"author": "string",
"created_at": "2026-07-24T12:00:00Z",
"note": "string",
"overlay": {
"element_overrides": [
{
"element": null,
"segment": null,
"transaction_set": null,
"value": null
}
],
"extra_segments": [
{
"elements": null,
"tag": null,
"transaction_set": null
}
]
},
"partner_id": "string",
"tenant_id": "string",
"validation": {
"accepted_inbound": [
"string"
],
"conditional_rules": [
{
"equals": null,
"require_element": null,
"require_segment": null,
"when_element": null,
"when_segment": null
}
],
"count_checks": {},
"element_constraints": [
{
"allowed": null,
"element": null,
"format": null,
"max_len": null,
"min_len": null,
"required": null,
"segment": null
}
],
"required_qualified": {},
"required_references": {},
"required_segments": {},
"segment_cardinality": {}
},
"version": 1
}