## org.hypercerts.claim.activity

- **Lexicon Version:** 1

### main (record)

A hypercert record tracking impact work.

**Record Key:** `any`

**Properties:**

- `image`: union → union[org.hypercerts.defs#uri, org.hypercerts.defs#smallImage]
  The hypercert visual representation as a URI or image blob.
- `title`: string
  Display title summarizing the impact work (e.g. 'Reforestation in Amazon Basin 2024')
  Constraints: maxLength: 256
- `rights`: ref → com.atproto.repo.strongRef
  A strong reference to the rights that this hypercert has. The record referenced must conform with the lexicon org.hypercerts.claim.rights.
- `endDate`: string (datetime)
  When the work ended
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `locations`: array
  An array of strong references to the location where activity was performed. The record referenced must conform with the lexicon app.certified.location.
  Constraints: maxLength: 1000
  Array of:
    - `item`: ref → com.atproto.repo.strongRef
- `startDate`: string (datetime)
  When the work began
- `workScope`: union → union[org.hypercerts.workscope.cel, #workScopeString]
  Work scope definition. A CEL expression for structured, machine-evaluable scopes or a free-form string for simple and legacy scopes.
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `description`: union → union[org.hypercerts.defs#descriptionString, pub.leaflet.pages.linearDocument, com.atproto.repo.strongRef]
  Long-form description of the activity. An inline string for plain text or markdown, a Leaflet linear document for rich-text content, or a strong reference to an external description record.
- `contributors`: array
  An array of contributor objects, each containing contributor information, weight, and contribution details.
  Array of:
    - `item`: ref → #contributor
- `shortDescription`: string
  Short summary of this activity claim, suitable for previews and list views. Rich text annotations may be provided via `shortDescriptionFacets`.
  Constraints: maxLength: 3000, maxGraphemes: 300
- `shortDescriptionFacets`: array
  Rich text annotations for `shortDescription` (mentions, URLs, hashtags, etc).
  Array of:
    - `item`: ref → app.bsky.richtext.facet

**Required:** title, shortDescription, createdAt

### contributor (object)

A contributor to the activity, with identity, weight, and contribution details.

**Properties:**

- `contributionWeight`: string
  The relative weight/importance of this contribution (stored as a string to avoid float precision issues). Must be a positive numeric value. Weights do not need to sum to a specific total; normalization can be performed by the consuming application as needed.
  Constraints: maxLength: 100
- `contributionDetails`: union → union[#contributorRole, com.atproto.repo.strongRef]
  Inline contribution role object with a role string via org.hypercerts.claim.activity#contributorRole, or a strong reference to a contribution details record. The record referenced must conform with the lexicon org.hypercerts.claim.contribution.
- `contributorIdentity`: union → union[#contributorIdentity, com.atproto.repo.strongRef]
  Inline contributor identity object with an identity string (DID or identifier) via org.hypercerts.claim.activity#contributorIdentity, or a strong reference to a contributor information record. The record referenced must conform with the lexicon org.hypercerts.claim.contributorInformation.

**Required:** contributorIdentity

### contributorRole (object)

Contribution details as a string.

**Properties:**

- `role`: string
  The contribution role or details.
  Constraints: maxLength: 1000, maxGraphemes: 100

**Required:** role

### workScopeString (object)

A free-form string describing the work scope for simple or legacy scopes.

**Properties:**

- `scope`: string
  The work scope description string.
  Constraints: maxLength: 10000, maxGraphemes: 1000

**Required:** scope

### contributorIdentity (object)

Contributor information as a string (DID or identifier).

**Properties:**

- `identity`: string
  The contributor identity string (DID or identifier).
  Constraints: maxLength: 1000, maxGraphemes: 100

**Required:** identity
