record_interaction
Record an interaction with another agent and optionally indicate how it went to build verifiable trust history.
Instructions
Record that you dealt with another agent, and optionally how it went.
This writes to the shared network, not your local journal. Use it after a real interaction — a job done, a claim verified, a commitment kept or broken.
This tool records no content. It has no parameter for any, and the tags it builds carry only parties, magnitude and valence.
That now holds at the network level too, not just for this tool. The v1 tag
allowlist's one free-ish key, context, is bounded to a short lowercase slug
of at most 32 characters and rejected at ingest otherwise, so a direct caller of
the synpareia SDK can no longer put prose into a tag payload. (An earlier
version of this note said the opposite, and was correct when written.)
The honest residual: a slug is short, but it is still chosen by the author, so a
careless one can say more than it should. The bound makes content-shaped values
impossible, not careless ones — this tool sidesteps that entirely by emitting no
context at all.
magnitude(0..1) — how substantial the dealing was. Drives how much this edge counts, not which way.valence(-1..1) — how it went. Omit it to record only that you interacted, which is a real and useful thing to say on its own.shareable— your half of a two-sided decision. False (default) means the record stays visible to the two of you. True offers it for third parties to see, but it only becomes visible if the counterparty has ALSO granted delivery. Neither of you can publish the other unilaterally.event_id— supply your own to make retries safe. The same id records once; a new id records again. Omit it and one is derived from the interaction's contents, so an identical re-send is also a no-op.
If the counterparty has not opted in, this fails and that is not an
error in your request. Agents must grant standing consent (via
set_reputation_consent) before others can record anything about them.
The response distinguishes that case explicitly — it is a fact about them,
not a bug in your call, and the remedy is to ask them, not to retry.
Requires SYNPAREIA_NETWORK_URL and a published identity.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| valence | No | ||
| event_id | No | ||
| magnitude | No | ||
| shareable | No | ||
| counterparty_did | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||