# us.off-the-clock.listing

> Something a member offers the members of a content space, for free or for a price, with up to ten photos (D97). Members respond by replying to it, so a listing heads a thread. The author marks it claimed or available by rewriting it at the same key; it stays listed until its author deletes it. Off the Clock takes no payment: the price is information, and members arrange payment and pickup between themselves.

- Kind: record
- Record key: tid
- Authority: off-the-clock.us
- Lexicon: 1
- Published by [off-the-clock.us](https://lexicon.garden/identity/did:plc:tevv7zpavtjtsvqrrwwipobt), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:tevv7zpavtjtsvqrrwwipobt/us.off-the-clock.listing)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:tevv7zpavtjtsvqrrwwipobt/us.off-the-clock.listing/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:tevv7zpavtjtsvqrrwwipobt/us.off-the-clock.listing/analytics)

## Record (`us.off-the-clock.listing`)

Type: record · key tid

### Properties

- `createdAt` (string · datetime, required): When it was listed; it sorts by this, so an edit or a status change keeps its place.
- `facets` (array): Annotations of text (mentions, URLs, hashtags, etc).
  - `items` (ref)
    - Reference: `app.bsky.richtext.facet`
- `images` (array): In the order shown. The thumbnails and originals behind them are a us.off-the-clock.embed.imageSet under the listing's record key (D70).
  - Constraints: maxLength: 10
  - `items` (ref)
    - Reference: `#image`
- `labels` (union): The author's own labels: spoiler and a content rating.
  - One of: `com.atproto.label.defs#selfLabels`
- `offer` (union, required): On what terms it is offered. Open, so other kinds can be added; a client that does not know a kind shows it as offered.
  - One of: `#free`, `#price`
- `status` (string, required): Whether it is still on offer. Only the author changes it.
  - Constraints: maxLength: 64, knownValues: available | claimed
- `text` (string): The details.
  - Constraints: maxLength: 10000, maxGraphemes: 1000
- `title` (string, required): What is offered.
  - Constraints: minLength: 1, maxLength: 1000, minGraphemes: 1, maxGraphemes: 100
- `updatedAt` (string · datetime): When it was last edited or its status changed.

## #free (`us.off-the-clock.listing#free`)

Type: object

Offered for nothing.

### Properties


## #image (`us.off-the-clock.listing#image`)

Type: object

### Properties

- `alt` (string, required): Alt text describing the photo.
  - Constraints: maxLength: 10000, maxGraphemes: 1000
- `aspectRatio` (ref)
  - Reference: `app.bsky.embed.defs#aspectRatio`
- `image` (blob, required): The view: a WebP of the photo as uploaded, under 1,000,000 bytes.
  - Constraints: maxSize: 1000000, accept: image/*

## #price (`us.off-the-clock.listing#price`)

Type: object

Offered for a price.

### Properties

- `amount` (integer, required): In the currency's minor unit (cents). Prices are whole dollars for now, so a multiple of 100.
  - Constraints: minimum: 100, maximum: 99999900
- `currency` (string, required): An ISO 4217 code. Only USD is accepted for now.
  - Constraints: minLength: 3, maxLength: 3, knownValues: USD

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "free": {
      "description": "Offered for nothing.",
      "properties": {},
      "type": "object"
    },
    "image": {
      "properties": {
        "alt": {
          "description": "Alt text describing the photo.",
          "maxGraphemes": 1000,
          "maxLength": 10000,
          "type": "string"
        },
        "aspectRatio": {
          "ref": "app.bsky.embed.defs#aspectRatio",
          "type": "ref"
        },
        "image": {
          "accept": [
            "image/*"
          ],
          "description": "The view: a WebP of the photo as uploaded, under 1,000,000 bytes.",
          "maxSize": 1000000,
          "type": "blob"
        }
      },
      "required": [
        "image",
        "alt"
      ],
      "type": "object"
    },
    "main": {
      "description": "Something a member offers the members of a content space, for free or for a price, with up to ten photos (D97). Members respond by replying to it, so a listing heads a thread. The author marks it claimed or available by rewriting it at the same key; it stays listed until its author deletes it. Off the Clock takes no payment: the price is information, and members arrange payment and pickup between themselves.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "description": "When it was listed; it sorts by this, so an edit or a status change keeps its place.",
            "format": "datetime",
            "type": "string"
          },
          "facets": {
            "description": "Annotations of text (mentions, URLs, hashtags, etc).",
            "items": {
              "ref": "app.bsky.richtext.facet",
              "type": "ref"
            },
            "type": "array"
          },
          "images": {
            "description": "In the order shown. The thumbnails and originals behind them are a us.off-the-clock.embed.imageSet under the listing's record key (D70).",
            "items": {
              "ref": "#image",
              "type": "ref"
            },
            "maxLength": 10,
            "type": "array"
          },
          "labels": {
            "description": "The author's own labels: spoiler and a content rating.",
            "refs": [
              "com.atproto.label.defs#selfLabels"
            ],
            "type": "union"
          },
          "offer": {
            "description": "On what terms it is offered. Open, so other kinds can be added; a client that does not know a kind shows it as offered.",
            "refs": [
              "#free",
              "#price"
            ],
            "type": "union"
          },
          "status": {
            "description": "Whether it is still on offer. Only the author changes it.",
            "knownValues": [
              "available",
              "claimed"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "text": {
            "description": "The details.",
            "maxGraphemes": 1000,
            "maxLength": 10000,
            "type": "string"
          },
          "title": {
            "description": "What is offered.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "minGraphemes": 1,
            "minLength": 1,
            "type": "string"
          },
          "updatedAt": {
            "description": "When it was last edited or its status changed.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "title",
          "offer",
          "status",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "price": {
      "description": "Offered for a price.",
      "properties": {
        "amount": {
          "description": "In the currency's minor unit (cents). Prices are whole dollars for now, so a multiple of 100.",
          "maximum": 99999900,
          "minimum": 100,
          "type": "integer"
        },
        "currency": {
          "description": "An ISO 4217 code. Only USD is accepted for now.",
          "knownValues": [
            "USD"
          ],
          "maxLength": 3,
          "minLength": 3,
          "type": "string"
        }
      },
      "required": [
        "amount",
        "currency"
      ],
      "type": "object"
    }
  },
  "id": "us.off-the-clock.listing",
  "lexicon": 1
}
```
