pet.trezy.getFeatureCandidates

Keepers who could be Pet of the Week as of a moment, and for each the pets that could be featured. A keeper qualifies when they have a featureConsent record, an activity record in the 14 days before asOf, no refused record in the 90 days before it, were not the keeper of a feature picked in the 365 days before it, and were not passed over in the 84 days before it. A pet qualifies when it is not retired and has at least 3 interactions. Every window is measured from asOf, never from the clock, so a dry run and a real run agree. Everything returned is already public.

Repository @trezy.pet did:plc:ollch4g7tes2reb5eceiwuol namespace authority
Details · query
Kindquery
Authoritytrezy.pet
Indexed

Query

query · GET

Parameters

query string

asOf

requiredstring · datetime

Leave this week's feature out of the exclusions, so the week being re-picked does not rule out its own keeper.

  • maxLength: 8

Output

application/json

error

string
  • knownValues: missing-as-of

keepers

array
itemsref
Reference

message

string

#keeper

object

Properties

did

requiredstring · did

pets

requiredarray
itemsref
Reference

#pet

object

Properties

createdAt

requiredstring · datetime

interactions

requiredinteger
  • minimum: 0

name

requiredstring

species

requiredstring

uri

requiredstring · at-uri

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Feature records, newest week first, with what a reader needs to show them: the pet's facts, the keeper's reply and consent. Public: every field here is already public in somebody's repo.

  • One week's Pet of the Week, held in the publisher's repo. The record key is the ISO week (e.g. 2026-W39), so there is exactly one per week and every step that writes it is idempotent. ⚠ ONLY THE PUBLISHER'S COPY COUNTS. The index refuses this collection from any other repo, because eligibility, the ribbon and the badge all read it.

  • The pets adopted in the 7 days before asOf, for the weekly arrivals post. Live pets only: a pet retired inside the same week is not an arrival any more. ⚠ `total` IS THE TRUE COUNT AND `pets` IS ONLY WHAT FITS ON STAGE — the post's number must be how many animals arrived, not how many the renderer could draw. Carries no keeper DID and no pet name, because the post says neither — `#pet` carries `rkey` rather than the at-URI so the caller never even receives the keeper's DID, which sits in the URI

  • The caller's own Pet of the Week state: consent, the account-wide interaction count, this week's pick and the last posted feature. ⚠ IT ONLY EVER DESCRIBES THE CALLER; there is no parameter that names anybody else.