# Lexicons matching `app.certified`

**7** lexicon(s) found.

## app.certified.actor.organization

- **Lexicon Version:** 1

### main (record)

Extended metadata for an organization actor. Complements the base actor profile (app.certified.actor.profile), which holds the display name, description, website, avatar, and banner, with organization-specific fields such as legal name, full logo, public contact email, legal structure, reference links, and locations.

**Record Key:** `literal:self`

**Properties:**

- `logo`: union → union[org.hypercerts.defs#uri, org.hypercerts.defs#smallImage]
  The organization's full logo: a wordmark, or a combination mark pairing the symbol with the name. Used where the logo appears without the name beside it, such as partner listings or badge displays. Prefer a horizontal image with a transparent background (PNG or WebP). The square symbol alone (brandmark) belongs in app.certified.actor.profile avatar, which is cropped to a square or circle.
- `urls`: array
  Additional reference URLs, each with a display label: social media profiles, contact pages, donation links, and similar. The organization's main website belongs in app.certified.actor.profile website, not here.
  Array of:
    - `item`: ref → #urlItem
- `langs`: array
  Human language(s) of this record's text fields, as BCP-47 language tags (e.g. 'es', 'pt-BR'); up to three for mixed-language text. Set by the writing app from the text the author wrote, with the author able to correct it; never from the interface language or a profile preference alone. A hint for readers, not a guarantee: consumers must not hide a record because it lacks this field.
  Constraints: maxLength: 3
  Array of:
    - `item`: string (language)
- `location`: ref → com.atproto.repo.strongRef
  A strong reference to the organization's primary location: where it is based, and where it is shown when a map displays one point per organization. The referenced record must conform with the lexicon app.certified.location. Because a strong reference pins a specific version (CID) of that record, update this reference whenever the location record is edited. Further locations go in additionalLocations.
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created.
- `legalName`: string
  The organization's registered legal name. The public-facing name belongs in app.certified.actor.profile displayName.
  Constraints: maxLength: 2560, maxGraphemes: 256
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `visibility`: string
  Controls whether the organization or project is publicly discoverable on platforms that honor this setting.
- `foundedDate`: string (datetime)
  When the organization was established. Stored as datetime per ATProto conventions (no date-only format exists). Clients should use midnight UTC (e.g., '2005-01-01T00:00:00.000Z'); consumers should treat only the date portion as canonical.
- `publicEmail`: string
  A contact email address the organization wants shown publicly (e.g. 'hello@example.org'). Records are public, so never put a personal or internal address here.
  Constraints: maxLength: 254
- `longDescription`: union → union[org.hypercerts.defs#descriptionString, pub.leaflet.pages.linearDocument, com.atproto.repo.strongRef]
  Long-form description of the organization, such as its mission, history, or detailed project narrative. An inline string for plain text or markdown, a Leaflet linear document record embedded directly, or a strong reference to an existing document record.
- `organizationType`: array
  Legal or operational structures of the organization (e.g. 'nonprofit', 'ngo', 'government', 'social-enterprise', 'cooperative').
  Constraints: maxLength: 10
  Array of:
    - `item`: string
      Constraints: maxLength: 128, maxGraphemes: 100
- `additionalLocations`: array
  Strong references to further locations where the organization operates, such as branches, outlets, or field offices. Excludes the primary location, which is in location; do not repeat it here. Each referenced record must conform with the lexicon app.certified.location. As with location, update a reference whenever its record is edited.
  Constraints: maxLength: 1000
  Array of:
    - `item`: ref → com.atproto.repo.strongRef

**Required:** createdAt

### urlItem (object)

A labeled URL reference.

**Properties:**

- `url`: string (uri)
  The URL.
  Constraints: maxLength: 10000, maxGraphemes: 2048
- `label`: string
  Optional human-readable label for this URL (e.g. 'Donation page').
  Constraints: maxLength: 640, maxGraphemes: 64

**Required:** url


---

## app.certified.actor.profile

- **Lexicon Version:** 1

### main (record)

A declaration of a Certified account profile.

**Record Key:** `literal:self`

**Properties:**

- `langs`: array
  Human language(s) of this record's text fields, as BCP-47 language tags (e.g. 'es', 'pt-BR'); up to three for mixed-language text. Set by the writing app from the text the author wrote, with the author able to correct it; never from the interface language or a profile preference alone. A hint for readers, not a guarantee: consumers must not hide a record because it lacks this field.
  Constraints: maxLength: 3
  Array of:
    - `item`: string (language)
- `avatar`: union → union[org.hypercerts.defs#uri, org.hypercerts.defs#smallImage]
  Small image to be displayed next to posts from account. AKA, 'profile picture'. Clients crop it to a square or circle, so an organization should use its brandmark (the symbol without the name); the full logo belongs in app.certified.actor.organization logo.
- `banner`: union → union[org.hypercerts.defs#uri, org.hypercerts.defs#largeImage]
  Larger horizontal image to display behind profile view.
- `website`: string (uri)
  Account website URL
- `pronouns`: string
  Free-form pronouns text.
  Constraints: maxLength: 200, maxGraphemes: 20
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `description`: string
  Free-form profile description text.
  Constraints: maxLength: 2560, maxGraphemes: 256
- `displayName`: string
  Display name for the account. For an organization, the public-facing name it uses in communications; a different registered legal name belongs in app.certified.actor.organization legalName.
  Constraints: maxLength: 640, maxGraphemes: 64

**Required:** createdAt


---

## app.certified.badge.award

- **Lexicon Version:** 1

### main (record)

Records a badge award to a user, project, or activity claim.

**Record Key:** `tid`

**Properties:**

- `url`: string (uri)
  Optional URL the badge award links to.
  Constraints: maxLength: 2048
- `note`: string
  Optional statement explaining the reason for this badge award.
  Constraints: maxLength: 500
- `badge`: ref → com.atproto.repo.strongRef
  Strong reference to the badge definition at the time of award. The record referenced must conform with the lexicon app.certified.badge.definition.
- `subject`: union → union[app.certified.defs#did, com.atproto.repo.strongRef]
  Entity the badge award is for (either an account DID or any specific AT Protocol record), e.g. a user, a project, or a specific activity claim.
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `validFrom`: string (datetime)
  When the badge starts to apply, which can differ from when this record was written (e.g. a certification granted in 2019 and recorded later). If omitted, the badge applies from createdAt. For date-only values, use midnight UTC (e.g. '2019-06-01T00:00:00.000Z'); consumers should treat only the date portion as canonical.
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `validUntil`: string (datetime)
  When the badge stops applying, e.g. when a certification lapses or a verification needs renewal. Must not be earlier than validFrom. If omitted, the badge has no end date. After this time the award is expired: still a true historical statement ('was certified until …'), and clients should present it as such. Expiry is not revocation; to revoke an award, the issuer deletes the record. For date-only values, use midnight UTC; consumers should treat only the date portion as canonical.

**Required:** badge, subject, createdAt


---

## app.certified.badge.definition

- **Lexicon Version:** 1

### main (record)

Defines a badge that can be awarded via badge award records to users, projects, or activity claims.

**Record Key:** `tid`

**Properties:**

- `icon`: blob
  Icon representing the badge, stored as a blob for compact visual display.
- `title`: string
  Human-readable title of the badge.
  Constraints: maxLength: 256
- `badgeType`: string
  Category of the badge. Values beyond the known set are permitted.
  Constraints: maxLength: 100
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `description`: string
  Optional short statement describing what the badge represents.
  Constraints: maxLength: 5000, maxGraphemes: 500
- `allowedIssuers`: array
  Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.
  Constraints: maxLength: 100
  Array of:
    - `item`: ref → app.certified.defs#did

**Required:** title, badgeType, createdAt


---

## app.certified.badge.response

- **Lexicon Version:** 1

### main (record)

Recipient response to a badge award.

**Record Key:** `tid`

**Properties:**

- `weight`: string
  Optional relative weight for accepted badges, assigned by the recipient.
  Constraints: maxLength: 50
- `response`: string
  The recipient’s response for the badge (accepted or rejected).
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `badgeAward`: ref → com.atproto.repo.strongRef
  Strong reference to the badge award being responded to. The record referenced must conform with the lexicon app.certified.badge.award.
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.

**Required:** badgeAward, response, createdAt


---

## app.certified.defs

Common type definitions used across certified protocols.

- **Lexicon Version:** 1

### did (object)

A Decentralized Identifier (DID) string.

**Properties:**

- `did`: string (did)
  The DID string value.
  Constraints: maxLength: 256

**Required:** did

### recordSubject (object)

A subject that is a record, referenced by AT-URI. The URI must use the DID form (not handle form) and deliberately carries no CID: it references the record's identity, not a specific version, so references made against it survive updates to the record.

**Properties:**

- `uri`: string (at-uri)
  AT-URI (DID form) of the record being followed. Schema validation enforces only general at-uri syntax; writers MUST supply a full record URI (did authority, collection, and rkey — not a handle authority or a partial URI), and consumers (AppView/indexer) are expected to reject or skip subjects that do not conform.

**Required:** uri


---

## app.certified.location

- **Lexicon Version:** 1

### main (record)

A location reference

**Record Key:** `tid`

**Properties:**

- `srs`: string (uri)
  The Spatial Reference System URI (e.g., http://www.opengis.net/def/crs/OGC/1.3/CRS84) that defines the coordinate system.
  Constraints: maxLength: 100
- `name`: string
  Human-readable name for this location (e.g. 'Golden Gate Park', 'San Francisco Bay Area')
  Constraints: maxLength: 1000, maxGraphemes: 100
- `location`: union → union[org.hypercerts.defs#uri, org.hypercerts.defs#smallBlob, #string]
  The location of where the work was performed as a URI, blob, or inline string.
- `createdAt`: string (datetime)
  Client-declared timestamp when this record was originally created
- `lpVersion`: string
  The version of the Location Protocol
  Constraints: maxLength: 10
- `signatures`: ref → app.certified.signature.defs#list
  Optional cryptographic signatures attesting to this record's content.
- `description`: string
  Additional context about this location, such as its significance to the work or specific boundaries
  Constraints: maxLength: 2000, maxGraphemes: 500
- `locationType`: string
  An identifier for the format of the location data. Use `country-code` for uppercase ISO 3166-1 alpha-2 codes in `location.string` (e.g. `CH`). Although this lexicon requires `srs`, it has no meaning for this type and consumers must ignore it. Use `geojson-point` for a single GeoJSON Point; use `geojson` as the catch-all for any other GeoJSON geometry (Polygon, MultiPolygon, FeatureCollection, etc.) — the inner payload's own GeoJSON `type` field carries the specifics. Values beyond the known set are permitted; see the Location Protocol spec for the canonical registry: https://spec.decentralizedgeo.org/specification/location-types/#location-type-registry
  Constraints: maxLength: 20

**Required:** lpVersion, srs, locationType, location, createdAt

### string (object)

A location represented as a string, e.g. coordinates or a small GeoJSON string.

**Properties:**

- `string`: string
  The location string value
  Constraints: maxLength: 10000, maxGraphemes: 1000

**Required:** string


---
