Estimate streaming payload size
Learn more about estimating the size of a streaming event payload for a destination and whether the object is classified as a large object.
Use the Streaming Payload Estimate to determine the event payload size for an entity or relation sent to a specific streaming destination and whether it exceeds that size limit. Estimating the payload size helps you identify and avoid unexpected size-limit failures before events are sent to the destination.
The Streaming Payload Estimate requires read privileges on entities, the same authorization as other data-read endpoints.
HTTP method and endpoint
Use the following HTTP method and endpoint path to submit the request for estimating the streaming payload size for an entity or relation on a given destination.
POST /{tenantId}/streaming/payloadEstimate
The following table describes the endpoint path parameters.
| Parameter | Type | Required | Description |
|---|---|---|---|
tenantId | String | Yes | The unique identifier of the tenant. Specifies the tenant context for the request. |
Request headers
The following request headers must be included.
| Header | Value | Required |
|---|---|---|
Authorization | Bearer <access_token> | Yes |
Content-Type | application/json | Yes |
Request body
The following table describes the request body parameters, including accepted values and defaults.
| Parameter | Type | Required | Description | Accepted values / Default |
|---|---|---|---|---|
objectUri | String | Yes | URI of an existing entity or relation. | Example: entities/{id} or relations/{id} |
destinationName | String | Yes | Name of a streaming destination configured for the tenant (queue or topic). Works even if the destination is currently disabled. | Example: queue.MyTenant.allEvents |
Example request
Use the following example to see how a complete request is structured with headers and a JSON body.
POST /{tenantId}/streaming/payloadEstimate
Authorization: Bearer <access_token>
Content-Type: application/json
{
"objectUri": "entities/ABC123",
"destinationName": "my-destination"
}
Response body
The following table describes the fields returned in the response body.
| Parameter | Type | Description |
|---|---|---|
payloadSizeBytes | Number | Size (in bytes) of the message that would be sent to the destination for this object. |
isLargeObject | Boolean | true if the estimated payload exceeds the destination's message-size limit.Note: If no publisher or connection is available for the destination,
payloadSizeBytes falls back to the serialized body length and isLargeObject defaults to false. |
maxMessageSize | Number | Maximum message size (in bytes) supported by the destination. |
Example response
The following example shows a response with the estimated payload size and large-object classification.
{
"payloadSizeBytes": 5718,
"maxMessageSize": 1048576,
"isLargeObject": false
}
Error codes and recommended actions
| HTTP status | Description | Recommended action |
|---|---|---|
| 400 Bad Request | Missing objectUri or destinationName, malformed object URI, URI does not point to an entity or relation, or unknown destination name. | Review the request payload, verify that objectUri and destinationName are valid, and resend the request. |
| 404 Not Found | Object does not exist. | Verify that the entity or relation URI exists for the tenant, then resend the request. |
| 503 Service Unavailable | Destination's messaging broker is unreachable. | Retry the request when the destination messaging broker is available. |
| 500 Internal Server Error | An unexpected error occurred while processing the request. | Retry the request. If the issue persists, contact Reltio Support. |
Payload estimate behavior and limitations
The endpoint evaluates the entity or relation as a full
*_CREATEDevent (worst-case, full-object payload). For destinations configured withpayloadType: DELTA, the reported size is a conservative upper bound, not the exact delta size.The destination's
objectFilteris not evaluated. The endpoint checks payload size only, not whether the entity or relation would actually be streamed to the destination.The Streaming Payload Estimate differs from the Statistics API (
GET entities/{id}/statisticwith theis_large_objectfield), which measures internal queue-serialization size independent of any destination. The Streaming Payload Estimate API measures the resolved payload for a specific destination, accounting for destination-specific configuration such aspayloadType,ovOnly,JMSEventsFilteringFields, andlargeObjectsSupport.