Either way, the update applies to the workspace’s shared record for that object, so every chip, link
and card that shows it in that workspace updates at once, in every conversation.
Revalidate
externalId your resolve returned. Reintersect queues a resolve
of the stored URL for the workspace the client acts for and answers 202 at once; the new fields
appear when your resolve answers. To update the same object in several workspaces, call it once
per install.
Push
fields accepts title, summary, subtitle, icon, status, updatedAt, url, visibility
and block. Fields you leave out keep their current values; null clears an optional field.
block replaces the whole rendered card, as { tree, actions }, or removes it with null; to change
a card’s props, revalidate instead so the SDK renders it.
version is a whole number that increases every time the object changes on your side. A timestamp
in milliseconds or a revision counter both work. Reintersect keeps the highest version it has stored
and ignores a push with a lower version, so pushes that arrive out of order can’t overwrite
fresher data. A push with the same version is applied, so sending the same push again is safe. An
ignored push isn’t an error: the response is { applied: false, version } with the version
Reintersect already holds.
Calling from handlers and routes
Inside a handler, use thereintersect client from the context; it’s already authorized for the
install. Declare references:write on the piece that pushes:
reintersect.forInstall(installId), or create one with
createReintersectClient(app, { installId }). Your app stores install ids, never tokens: the SDK
mints a short-lived install token with your app’s client credentials, or, on Reintersect hosting,
lets the gateway add it. See Client.
The kind is typed from the app: pushing to a kind the app doesn’t include is a type error.
Over HTTP
Both operations are plain API calls if you don’t use the SDK:- Revalidate a reference:
POST /v0/references/revalidate - Push reference fields:
PUT /v0/references