africa.kandake.asha.recipe.scrapeUrl

kandake.africa

Documentation

Scrape a URL to extract structured recipe data. Tries schema.org parsing first, falls back to LLM extraction.

main procedure

Scrape a URL to extract structured recipe data. Tries schema.org parsing first, falls back to LLM extraction.

Input

Encodingapplication/json
url stringuri Required

A valid URI.

Output

Encodingapplication/json
imageUrl stringuri Optional

URL of the discovered header image, if any.

Errors

ScrapeFailed Unable to extract recipe data from the provided URL.
InvalidUrl The URL is not reachable or not a valid recipe page.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri"
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "ScrapeFailed",
      "description": "Unable to extract recipe data from the provided URL."
    },
    {
      "name": "InvalidUrl",
      "description": "The URL is not reachable or not a valid recipe page."
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "recipe"
      ],
      "properties": {
        "recipe": {
          "ref": "#scrapedRecipe",
          "type": "ref"
        },
        "imageUrl": {
          "type": "string",
          "format": "uri",
          "description": "URL of the discovered header image, if any."
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Scrape a URL to extract structured recipe data. Tries schema.org parsing first, falls back to LLM extraction."
}
scrapedRecipe object

Recipe data extracted from a URL, presented for user confirmation before writing to PDS.

Properties

categories array of string Optional

No description available.

cookTimeMinutes integer Optional

No description available.

description string Optional

No description available.

notes string Optional

No description available.

nutrition string Optional

No description available.

prepTimeMinutes integer Optional

No description available.

servings integer Optional

No description available.

source string Optional

No description available.

title string Required

No description available.

totalTimeMinutes integer Optional

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "title",
    "ingredients",
    "instructions"
  ],
  "properties": {
    "notes": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "servings": {
      "type": "integer"
    },
    "nutrition": {
      "type": "string"
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "description": {
      "type": "string"
    },
    "ingredients": {
      "type": "array",
      "items": {
        "ref": "africa.kandake.asha.recipe.recipe#ingredient",
        "type": "ref"
      }
    },
    "instructions": {
      "type": "array",
      "items": {
        "ref": "africa.kandake.asha.recipe.recipe#instruction",
        "type": "ref"
      }
    },
    "cookTimeMinutes": {
      "type": "integer"
    },
    "prepTimeMinutes": {
      "type": "integer"
    },
    "totalTimeMinutes": {
      "type": "integer"
    }
  },
  "description": "Recipe data extracted from a URL, presented for user confirmation before writing to PDS."
}

Lexicon Garden

@