blue.registry.item

registry.blue

Documentation

A wishlist or registry item. Can be generic or specific.

main record

A wishlist or registry item. Can be generic or specific.

Record Key tid Timestamp-based ID

Properties

budget ref #moneyRange Optional

The budget the user is willing to spend.

color string Optional

Color preference (e.g. 'Space Black', 'Red').

maxLength: 200 bytesmaxGraphemes: 50 graphemes
createdAt string datetime Required

Timestamp when the item was created.

description string Optional

Open description field for any additional details, preferences, or notes.

maxLength: 10000 bytesmaxGraphemes: 2000 graphemes
image blob Optional

An image of the item.

maxSize: 1.0 MB
isDonation boolean Optional

Whether this item is a donation link (e.g. GoFundMe, charity). Donation items appear first in list views.

Default: false
name string Required

The name of the item. Can be generic (e.g. 'a new laptop') or specific (e.g. 'MacBook Pro M4 14"').

maxLength: 1000 bytesmaxGraphemes: 200 graphemes
price ref #money Optional

The actual or listed price of the item.

priority string Optional

How much the user wants this item.

Known values: must-have, strong-desire, someday
size string Optional

Size specification (e.g. 'Large', '10.5', '14 inch').

maxLength: 200 bytesmaxGraphemes: 50 graphemes
updatedAt string datetime Optional

Timestamp when the item was last modified.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "name",
      "createdAt"
    ],
    "properties": {
      "name": {
        "type": "string",
        "maxLength": 1000,
        "description": "The name of the item. Can be generic (e.g. 'a new laptop') or specific (e.g. 'MacBook Pro M4 14\"').",
        "maxGraphemes": 200
      },
      "size": {
        "type": "string",
        "maxLength": 200,
        "description": "Size specification (e.g. 'Large', '10.5', '14 inch').",
        "maxGraphemes": 50
      },
      "color": {
        "type": "string",
        "maxLength": 200,
        "description": "Color preference (e.g. 'Space Black', 'Red').",
        "maxGraphemes": 50
      },
      "image": {
        "type": "blob",
        "accept": [
          "image/png",
          "image/jpeg",
          "image/webp"
        ],
        "maxSize": 1000000,
        "description": "An image of the item."
      },
      "links": {
        "type": "array",
        "items": {
          "ref": "#link",
          "type": "ref"
        },
        "maxLength": 20,
        "description": "Links to product pages, listings, or references."
      },
      "price": {
        "ref": "#money",
        "type": "ref",
        "description": "The actual or listed price of the item."
      },
      "budget": {
        "ref": "#moneyRange",
        "type": "ref",
        "description": "The budget the user is willing to spend."
      },
      "priority": {
        "type": "string",
        "description": "How much the user wants this item.",
        "knownValues": [
          "must-have",
          "strong-desire",
          "someday"
        ]
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "Timestamp when the item was created."
      },
      "updatedAt": {
        "type": "string",
        "format": "datetime",
        "description": "Timestamp when the item was last modified."
      },
      "isDonation": {
        "type": "boolean",
        "default": false,
        "description": "Whether this item is a donation link (e.g. GoFundMe, charity). Donation items appear first in list views."
      },
      "description": {
        "type": "string",
        "maxLength": 10000,
        "description": "Open description field for any additional details, preferences, or notes.",
        "maxGraphemes": 2000
      }
    }
  },
  "description": "A wishlist or registry item. Can be generic or specific."
}
link object

A link to a product page or listing.

Properties

imageUrl string uri Optional

Preview image URL, typically from Open Graph meta tags.

modelNumber string Optional

Manufacturer or seller model/SKU number.

maxLength: 500 bytesmaxGraphemes: 100 graphemes
priceHistory array of ref#priceEntry Optional

Historical price observations for this link.

maxLength: 1000 items
title string Optional

Display title for the link.

maxLength: 500 bytesmaxGraphemes: 100 graphemes
url string uri Required

URL of the product page.

View raw schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the product page."
    },
    "title": {
      "type": "string",
      "maxLength": 500,
      "description": "Display title for the link.",
      "maxGraphemes": 100
    },
    "imageUrl": {
      "type": "string",
      "format": "uri",
      "description": "Preview image URL, typically from Open Graph meta tags."
    },
    "modelNumber": {
      "type": "string",
      "maxLength": 500,
      "description": "Manufacturer or seller model/SKU number.",
      "maxGraphemes": 100
    },
    "priceHistory": {
      "type": "array",
      "items": {
        "ref": "#priceEntry",
        "type": "ref"
      },
      "maxLength": 1000,
      "description": "Historical price observations for this link."
    }
  },
  "description": "A link to a product page or listing."
}
money object

A monetary amount in the smallest currency unit (e.g. cents).

Properties

amount integer Required

Amount in smallest currency unit (e.g. cents).

minimum: 0
currency string Optional

ISO 4217 currency code.

maxLength: 3 bytes
View raw schema
{
  "type": "object",
  "required": [
    "amount"
  ],
  "properties": {
    "amount": {
      "type": "integer",
      "minimum": 0,
      "description": "Amount in smallest currency unit (e.g. cents)."
    },
    "currency": {
      "type": "string",
      "default": "USD",
      "maxLength": 3,
      "description": "ISO 4217 currency code."
    }
  },
  "description": "A monetary amount in the smallest currency unit (e.g. cents)."
}
moneyRange object

A budget range in the smallest currency unit.

Properties

currency string Optional

ISO 4217 currency code.

maxLength: 3 bytes
max integer Optional

Maximum amount in smallest currency unit.

minimum: 0
min integer Optional

Minimum amount in smallest currency unit.

minimum: 0
View raw schema
{
  "type": "object",
  "properties": {
    "max": {
      "type": "integer",
      "minimum": 0,
      "description": "Maximum amount in smallest currency unit."
    },
    "min": {
      "type": "integer",
      "minimum": 0,
      "description": "Minimum amount in smallest currency unit."
    },
    "currency": {
      "type": "string",
      "default": "USD",
      "maxLength": 3,
      "description": "ISO 4217 currency code."
    }
  },
  "description": "A budget range in the smallest currency unit."
}
priceEntry object

A price observation at a point in time.

Properties

observedAt string datetime Required

When this price was observed.

price ref #money Required

The observed price.

View raw schema
{
  "type": "object",
  "required": [
    "price",
    "observedAt"
  ],
  "properties": {
    "price": {
      "ref": "#money",
      "type": "ref",
      "description": "The observed price."
    },
    "observedAt": {
      "type": "string",
      "format": "datetime",
      "description": "When this price was observed."
    }
  },
  "description": "A price observation at a point in time."
}

Lexicon Garden

@