Skip to content

Set a node's payload

PUT
/content/management/v1/experience/nodes/{id}/payload
curl --request PUT \
--url https://api.ebitex.io/content/management/v1/experience/nodes/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/payload \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "kind": "example", "presentation": {}, "targetNodeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }'

Sets what a node serves, replacing whatever it served before. kind picks one of two shapes:

  • presentation: a page. presentation is a Presentation envelope — template (a Template id), templateVersion, settings, and a component binding, either a reference to an existing component (provider, key, contextualValues) or an inline one. It is validated like a Presentation field, and the Template must be allowed at this node.
  • redirect: targetNodeId names the node to redirect to, in the same environment.

A node’s name and slug are set with PUT /experience/nodes/{id}, never here. Nothing here reaches delivery until the node is published. The key acts as its role, so branch access rules apply: a node the role cannot view answers 404, and one it can view but not change answers 403 access_denied. A workflow can also lock the node against edits.

Key: a management key with content.management.authoring.

id
required
string format: uuid
Media typeapplication/json
object
kind
required
string
presentation
required
One of:
null
targetNodeId
required
null | string format: uuid
Examplegenerated
{
"kind": "example",
"presentation": {},
"targetNodeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
}

The node, in the shape GET /experience/nodes/{id} returns.

validation_failed: an unknown kind, the member that kind needs is missing, the envelope is invalid (each problem is listed in errors under a path starting payload), or targetNodeId names no node. invalid_redirect_target: a node cannot redirect to itself.

missing_api_key or invalid_api_key: no key was sent, or it is unknown, revoked or expired.

payment_required: the organization’s subscription needs attention.

access_denied: the key’s role may not edit this node.

scope_denied: the key lacks this route’s scope. tier_required: the Content Management API needs the Pro plan or above. ip_denied: the caller’s address is outside the key’s allowed ranges. app_not_available: Content is not enabled for the organization.

No node has this id, or the key’s role cannot see it.

workflow_state_not_editable: the node’s workflow state does not allow edits; state and definition name it.

Rate limit or quota exceeded; Retry-After says how long to wait. too_many_failed_authentications: too many bad keys from this address.