Skip to content

feat(docs): document customer relationship_level in 3.6 and v3.7 EUEE-1586 - #1686

Open
GGuinea wants to merge 3 commits into
masterfrom
EUEE-1586-customer-relationship-level
Open

feat(docs): document customer relationship_level in 3.6 and v3.7 EUEE-1586#1686
GGuinea wants to merge 3 commits into
masterfrom
EUEE-1586-customer-relationship-level

Conversation

@GGuinea

@GGuinea GGuinea commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Documents the native per-customer relationship level exposed by agent-api in versions 3.6 and 3.7 (EUEE-1586).

What is documented

  • relationship_level added to the Customer data structure table and to the sample Customer payload (3.6 and v3.7). String enum, the only supported value is vip, returned only when set.
  • customer_updated push: a relationship level change arrives as a separate, sparse payload containing only id, type, and relationship_level, where null means the level was removed. Added as its own sample payload instead of extending the existing one, because the CDP-sourced push never carries the monitoring fields shown there.
  • Changelog entries under Customers for both v3.6 and v3.7.

Versions 3.4 and 3.5 are untouched — they neither expose the field nor receive the push.

Out of scope

  • The write path (POST /v1/update_customer in the Customer Data Platform API, scope customers:rw) is not documented here. src/configs/redoc/customer-data-platform-api/spec.yml has drifted from the service spec in livechat/api (missing /v1/delete_customer_property_definition, /v1/set_customer_properties_values, /v1/has_sales_events), so syncing it is a separate task.
  • segment_memberships (EUEE-1567) is still undocumented in the Customer data structure.
  • The v3.7 Customer table is still missing the phone_number and omnichannel rows that v3.6 has.

Prerequisites before merge

  • livechat/api PR1/3 for EUEE-1586 (native relationship level: per-customer set + push) released to production.

@GGuinea
GGuinea requested a review from a team as a code owner August 4, 2026 18:59
Copilot AI balanced review requested due to automatic review settings August 21, 2026 14:14

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Documents relationship_level support for Agent Chat API v3.6 and v3.7.

Changes:

  • Adds the field to Customer schemas and examples.
  • Documents sparse customer_updated pushes.
  • Adds changelog entries for both versions.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/pages/messaging/agent-chat-api/v3.7/rtm-pushes/index.mdx Documents v3.7 relationship-level pushes.
src/pages/messaging/agent-chat-api/v3.7/data-structures/index.mdx Adds the v3.7 Customer field.
src/pages/messaging/agent-chat-api/rtm-pushes/index.mdx Documents v3.6 relationship-level pushes.
src/pages/messaging/agent-chat-api/data-structures/index.mdx Adds the v3.6 Customer field.
src/pages/messaging/agent-chat-api/changelog/index.mdx Records both API-version changes.
payloads/messaging/v3.7/agent-chat-api/users/customer.json Updates the v3.7 Customer example.
payloads/messaging/v3.6/agent-chat-api/users/customer.json Updates the v3.6 Customer example.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/pages/messaging/agent-chat-api/data-structures/index.mdx
Comment thread src/pages/messaging/agent-chat-api/v3.7/data-structures/index.mdx
Copilot review: field was documented only in data-structures. Add it to
v3.6/v3.7 Web and RTM get_customer response tables, matching the
segment_memberships precedent.
| `omnichannel` | optional | |
| `address` | optional | An object of the customer's address data. |
| `customer_properties` | optional | An object where the keys are the IDs of the [customer properties](#customer-property) and the values are their data. |
| `relationship_level` | optional | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | optional | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | optional | The customer's relationship level. Possible values: `vip`. Returned only if set. |

| `carts` | optional | An array of customer's shopping carts. See [Cart](#cart) for the object structure. |
| `address` | optional | An object of the customer's address data. |
| `customer_properties` | optional | An object where the keys are the IDs of the [customer properties](#customer-property) and the values are their data. |
| `relationship_level` | optional | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | optional | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | optional | The customer's relationship level. Possible values: `vip`. Returned only if set. |

| `chat_ids` | []string | The IDs of the customer's chats. Returned only if the customer had at least one chat. |
| `omnichannel` | object | An object of the customer's [omnichannel data](/messaging/agent-chat-api/data-structures/#customer). |
| `address` | object | An object of the customer's address data. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. Possible values: `vip`. Returned only if set. |

| `chat_ids` | []string | The IDs of a customer's chats. Returned only if the customer had at least one chat. |
| `omnichannel` | object | An object of the customer's [omnichannel data](/messaging/agent-chat-api/v3.7/data-structures/#customer). |
| `address` | object | An object of the customer's address data. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. Possible values: `vip`. Returned only if set. |

| `chat_ids` | []string | IDs of a customer's chats. Returned only if the customer had at least one chat. |
| `omnichannel` | object | An object of the customer's [omnichannel data](/messaging/agent-chat-api/v3.7/data-structures/#customer). |
| `address` | object | An object of the customer's address data. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. Possible values: `vip`. Returned only if set. |

| `chat_ids` | []string | The IDs of a customer's chats. Returned only if the customer had at least one chat. |
| `omnichannel` | object | An object of the customer's [omnichannel data](/messaging/agent-chat-api/data-structures/#customer). |
| `address` | object | An object of the customer's address data. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `relationship_level` | string | The customer's relationship level. The only supported value is `vip`. Returned only if set. |
| `relationship_level` | string | The customer's relationship level. Possible values: `vip`. Returned only if set. |


</CodeResponse>

A change of the customer's `relationship_level` is reported in a separate push, which contains only `id`, `type`, and `relationship_level`. The value is `null` when the relationship level was removed.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A change of the customer's `relationship_level` is reported in a separate push, which contains only `id`, `type`, and `relationship_level`. The value is `null` when the relationship level was removed.
Changes to the customer's `relationship_level` are reported in a separate `customer_updated` push that includes only the `id`, `type`, and `relationship_level` fields. The `relationship_level` value is `null` when the relationship level is removed.


</CodeResponse>

A change of the customer's `relationship_level` is reported in a separate push, which contains only `id`, `type`, and `relationship_level`. The value is `null` when the relationship level was removed.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A change of the customer's `relationship_level` is reported in a separate push, which contains only `id`, `type`, and `relationship_level`. The value is `null` when the relationship level was removed.
Changes to the customer's `relationship_level` are reported in a separate `customer_updated` push that includes only the `id`, `type`, and `relationship_level` fields. The `relationship_level` value is `null` when the relationship level is removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants