Define a reference kind
This is the referencenpm create reintersect scaffolds:
src/taskReference.ts
.addReference(TaskLink). The kind ("task") uses a-z, 0-9 and -, is
at most 48 characters, and is unique within the app. title labels the kind in search tabs and on
the consent screen; it defaults to the kind.
What Reintersect builds from your answer
resolve returns core fields: a title, a status, a summary and a few more. Reintersect derives every
presentation from those fields, so you write one function and get consistent results across the
product:
Chip, link or card
Members choose how a reference displays, and can switch at any time:
A custom
block replaces only the card body. Chips, link titles, hover cards and agent text still
come from the core fields, and the card keeps Reintersect’s frame and the “via <app name>” line.
One shared object per workspace
Reintersect keeps one record per reference in each workspace, keyed by your kind and theexternalId you return. Every place the URL appears in that workspace, in any conversation, reply or
decision, shows the same record. When you push new fields or ask for a refresh,
every occurrence updates at once.
Return the same externalId for every URL that points at the same object, so a short URL and a long
URL show one record.
When a member pastes a link
- Reintersect matches the URL against the patterns of every app installed in the workspace, and the member’s own development installs. Matching happens on Reintersect’s servers only; your app never sees URLs that don’t match its patterns.
- On a match, Reintersect calls your
resolvewith the parameters extracted from the URL, for the member who pasted it. - The answer is stored and the link turns into a reference chip. The editor offers the card display when the kind has a custom block.
- If your app subscribes to them and holds
conversations:read, it receivesreference.createdwhen a member adds a link to one of your objects in a circle it can reach, andreference.removedwhen that link is deleted. See the event catalog.
/ and your app’s slug, when the
kind has search.
Who sees what
By default a reference is restricted: Reintersect resolves it for each member who views it, and a member whose resolve was withheld sees only a plain link chip, without your title, summary or card. Returnvisibility: "public" for objects anyone in the workspace may see, and every member gets the
shared fields. See Visibility.
Next steps
URL patterns
The pattern grammar, with allowed and rejected examples.
Resolving references
Core fields, access results, visibility and custom cards.
Search
Let members find your objects from the slash menu.
Keeping references current
Push new fields or ask Reintersect to resolve again.