community.gifthood.exchange

gifthood.community

Documentation

The listing owner's attestation of an exchange: who was chosen to give/receive the listed gift, and when it was completed. The counterparty attests via community.gifthood.exchangeResponse; a mutually confirmed pair is follow-through evidence. Public, like the interest record.

main record

The listing owner's attestation of an exchange: who was chosen to give/receive the listed gift, and when it was completed. The counterparty attests via community.gifthood.exchangeResponse; a mutually confirmed pair is follow-through evidence. Public, like the interest record.

Record Key tid Timestamp-based ID

Properties

completedAt string datetime Optional

Set (via record update) when the owner marks the gift complete — the item handed over or the service rendered. Absence means the exchange is still pending.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

giver string did Required

DID of the member giving the item. Exactly one of giver/receiver is the record author (the listing owner): on an offer listing the author is the giver; on a request listing the author is the receiver.

interest ref com.atproto.repo.strongRef Optional

Optional strong reference to the counterparty's interest record, when they raised a hand. Absent when the counterparty was chosen from a listing-scoped conversation.

receiver string did Required

DID of the member receiving the item.

returnedAt string datetime Optional

Set (via record update) by the owner when a lent item comes home. Only meaningful when the subject listing has mode 'lend'; indexers ignore it on gift exchanges and ignore a returnedAt without completedAt (an item cannot come back before it was handed over). Owner-attested only — the mutual response pair already attests the handover; disputes go through reporting.

subject ref com.atproto.repo.strongRef Required

Strong reference (URI + CID) to the listing this exchange is for. Must be a listing authored by this record's author.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "subject",
      "giver",
      "receiver",
      "createdAt"
    ],
    "properties": {
      "giver": {
        "type": "string",
        "format": "did",
        "description": "DID of the member giving the item. Exactly one of giver/receiver is the record author (the listing owner): on an offer listing the author is the giver; on a request listing the author is the receiver."
      },
      "subject": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref",
        "description": "Strong reference (URI + CID) to the listing this exchange is for. Must be a listing authored by this record's author."
      },
      "interest": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref",
        "description": "Optional strong reference to the counterparty's interest record, when they raised a hand. Absent when the counterparty was chosen from a listing-scoped conversation."
      },
      "receiver": {
        "type": "string",
        "format": "did",
        "description": "DID of the member receiving the item."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "returnedAt": {
        "type": "string",
        "format": "datetime",
        "description": "Set (via record update) by the owner when a lent item comes home. Only meaningful when the subject listing has mode 'lend'; indexers ignore it on gift exchanges and ignore a returnedAt without completedAt (an item cannot come back before it was handed over). Owner-attested only — the mutual response pair already attests the handover; disputes go through reporting."
      },
      "completedAt": {
        "type": "string",
        "format": "datetime",
        "description": "Set (via record update) when the owner marks the gift complete — the item handed over or the service rendered. Absence means the exchange is still pending."
      }
    }
  },
  "description": "The listing owner's attestation of an exchange: who was chosen to give/receive the listed gift, and when it was completed. The counterparty attests via community.gifthood.exchangeResponse; a mutually confirmed pair is follow-through evidence. Public, like the interest record."
}

Lexicon Garden

@