tl.is

Tölvulistinn (tl.is)

Iceland's biggest computer store — live price, stock, SKU and brand for any product page, plus keyword search over the whole catalogue. tl.is is one of the shops tracked by the vaktin.is price watch. No auth.

v0.1.0 2/2 verified hardwarecomputer-partsstorepricespublic
jokull <https://github.com/jokull> · https://tl.is
ab-plus add tl.is && ab-plus run tl.is/<op>

Auth rail

Public (none) Public data — nothing to store, no login.

Auth paths

none ●
Public storefront — product pages embed JSON-LD Product schema; search results render client-side (Algolia). Nothing to store.

Auth paths

none ●
Public storefront — product pages embed JSON-LD Product schema; search results render client-side (Algolia). Nothing to store.

Operations

Op Kind Risk Requires Description
tl.is/product rest read-only Live price, stock availability, SKU and brand for one product, parsed from the embedded JSON-LD Product schema. Input is a product URL or slug.
returns namestring skustring brandstring | null priceinteger | null currencystring availabilitystring urlstring
verified 2026-08-23
input
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Product URL or slug, e.g. amd-am5-ryzen-9-9950x3d-4-3ghz-5-7ghz-tray.html"
    }
  }
}
raw output schema
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "sku": {
      "type": "string"
    },
    "brand": {
      "type": [
        "string",
        "null"
      ]
    },
    "price": {
      "type": [
        "integer",
        "null"
      ],
      "description": "ISK"
    },
    "currency": {
      "type": "string",
      "enum": [
        "ISK",
        "EUR"
      ]
    },
    "availability": {
      "type": "string",
      "enum": [
        "in-stock",
        "out-of-stock",
        "preorder",
        "unknown"
      ]
    },
    "url": {
      "type": "string"
    }
  }
}
tl.is/search dom read-only Keyword search over the whole catalogue. Results render client-side (Algolia) so this runs in an agent-browser session against https://tl.is/catalogsearch/result?q=<query>. Returns name, price and product URL per hit.
returns namestring urlstring priceinteger | null priceTextstring | null
verified 2026-08-23
input
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search terms, e.g. rtx 5070"
    }
  }
}
raw output schema
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "price": {
      "type": [
        "integer",
        "null"
      ],
      "description": "ISK"
    },
    "priceText": {
      "type": [
        "string",
        "null"
      ],
      "description": "As displayed, e.g. 219.995 kr"
    }
  }
}

Raw artifacts

The manifest is the discovery record — the schema, the docs, and the search index in one file. manifest.json · recipe.ts · README.md