{
  "@context": {
    "@vocab": "https://tinyplates.dev/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "tinyplates": "https://tinyplates.dev/schema#",
    "HttpApiDecodeError": "tinyplates:HttpApiDecodeError",
    "issues": {
      "@id": "tinyplates:issues",
      "@container": "@list"
    },
    "message": {
      "@id": "tinyplates:message",
      "@type": "xsd:string"
    },
    "_tag": {
      "@id": "tinyplates:_tag",
      "@type": "xsd:string"
    },
    "Issue": "tinyplates:Issue",
    "path": {
      "@id": "tinyplates:path",
      "@container": "@list"
    },
    "Pagination": "tinyplates:Pagination",
    "limit": {
      "@id": "tinyplates:limit",
      "@type": "xsd:decimal"
    },
    "offset": {
      "@id": "tinyplates:offset",
      "@type": "xsd:decimal"
    },
    "total": {
      "@id": "tinyplates:total",
      "@type": "xsd:decimal"
    },
    "PantryRecipe": "tinyplates:PantryRecipe",
    "id": {
      "@id": "tinyplates:id",
      "@type": "xsd:string"
    },
    "author": {
      "@id": "tinyplates:author",
      "@type": "@id"
    },
    "description": {
      "@id": "tinyplates:description",
      "@type": "@id"
    },
    "dietary": {
      "@id": "tinyplates:dietary",
      "@type": "@id"
    },
    "instructions": {
      "@id": "tinyplates:instructions",
      "@container": "@list"
    },
    "language": {
      "@id": "tinyplates:language",
      "@type": "@id"
    },
    "media": {
      "@id": "tinyplates:media",
      "@container": "@list"
    },
    "notes": {
      "@id": "tinyplates:notes",
      "@container": "@list"
    },
    "nutrition": {
      "@id": "tinyplates:nutrition",
      "@type": "@id"
    },
    "rating": {
      "@id": "tinyplates:rating",
      "@type": "@id"
    },
    "servings": {
      "@id": "tinyplates:servings",
      "@type": "@id"
    },
    "times": {
      "@id": "tinyplates:times",
      "@type": "@id"
    },
    "title": {
      "@id": "tinyplates:title",
      "@type": "@id"
    },
    "allergens": {
      "@id": "tinyplates:allergens",
      "@type": "@id"
    },
    "categories": {
      "@id": "tinyplates:categories",
      "@container": "@list"
    },
    "courses": {
      "@id": "tinyplates:courses",
      "@container": "@list"
    },
    "createdAt": {
      "@id": "tinyplates:createdAt",
      "@type": "@id"
    },
    "cuisines": {
      "@id": "tinyplates:cuisines",
      "@container": "@list"
    },
    "equipment": {
      "@id": "tinyplates:equipment",
      "@container": "@list"
    },
    "groups": {
      "@id": "tinyplates:groups",
      "@type": "@id"
    },
    "ingredients": {
      "@id": "tinyplates:ingredients",
      "@container": "@list"
    },
    "tags": {
      "@id": "tinyplates:tags",
      "@container": "@list"
    },
    "techniques": {
      "@id": "tinyplates:techniques",
      "@container": "@list"
    },
    "text": {
      "@id": "tinyplates:text",
      "@type": "@id"
    },
    "updatedAt": {
      "@id": "tinyplates:updatedAt",
      "@type": "@id"
    },
    "url": {
      "@id": "tinyplates:url",
      "@type": "xsd:string"
    },
    "assumedIngredients": {
      "@id": "tinyplates:assumedIngredients",
      "@container": "@list"
    },
    "coverage": {
      "@id": "tinyplates:coverage",
      "@type": "xsd:decimal"
    },
    "matchedIngredients": {
      "@id": "tinyplates:matchedIngredients",
      "@container": "@list"
    },
    "missingIngredients": {
      "@id": "tinyplates:missingIngredients",
      "@container": "@list"
    },
    "Author": "tinyplates:Author",
    "name": {
      "@id": "tinyplates:name",
      "@type": "@id"
    },
    "Dietary": "tinyplates:Dietary",
    "dairyFree": {
      "@id": "tinyplates:dairyFree",
      "@type": "xsd:boolean"
    },
    "glutenFree": {
      "@id": "tinyplates:glutenFree",
      "@type": "xsd:boolean"
    },
    "pescatarian": {
      "@id": "tinyplates:pescatarian",
      "@type": "xsd:boolean"
    },
    "vegan": {
      "@id": "tinyplates:vegan",
      "@type": "xsd:boolean"
    },
    "vegetarian": {
      "@id": "tinyplates:vegetarian",
      "@type": "xsd:boolean"
    },
    "RecipeInstruction": "tinyplates:RecipeInstruction",
    "duration": {
      "@id": "tinyplates:duration",
      "@type": "@id"
    },
    "group": {
      "@id": "tinyplates:group",
      "@type": "@id"
    },
    "step": {
      "@id": "tinyplates:step",
      "@type": "xsd:integer"
    },
    "temperature": {
      "@id": "tinyplates:temperature",
      "@type": "@id"
    },
    "Duration": "tinyplates:Duration",
    "seconds": {
      "@id": "tinyplates:seconds",
      "@type": "@id"
    },
    "Temperature": "tinyplates:Temperature",
    "unit": {
      "@id": "tinyplates:unit",
      "@type": "xsd:string"
    },
    "value": {
      "@id": "tinyplates:value",
      "@type": "xsd:decimal"
    },
    "ImageMedia": "tinyplates:ImageMedia",
    "alt": {
      "@id": "tinyplates:alt",
      "@type": "@id"
    },
    "caption": {
      "@id": "tinyplates:caption",
      "@type": "@id"
    },
    "license": {
      "@id": "tinyplates:license",
      "@type": "@id"
    },
    "sourceUrl": {
      "@id": "tinyplates:sourceUrl",
      "@type": "@id"
    },
    "height": {
      "@id": "tinyplates:height",
      "@type": "xsd:integer"
    },
    "role": {
      "@id": "tinyplates:role",
      "@type": "xsd:string"
    },
    "type": {
      "@id": "tinyplates:type",
      "@type": "xsd:string"
    },
    "variants": {
      "@id": "tinyplates:variants",
      "@container": "@list"
    },
    "width": {
      "@id": "tinyplates:width",
      "@type": "xsd:integer"
    },
    "ImageVariant": "tinyplates:ImageVariant",
    "VideoMedia": "tinyplates:VideoMedia",
    "embedUrl": {
      "@id": "tinyplates:embedUrl",
      "@type": "@id"
    },
    "provider": {
      "@id": "tinyplates:provider",
      "@type": "@id"
    },
    "thumbnailUrl": {
      "@id": "tinyplates:thumbnailUrl",
      "@type": "@id"
    },
    "videoId": {
      "@id": "tinyplates:videoId",
      "@type": "@id"
    },
    "Nutrition": "tinyplates:Nutrition",
    "basis": {
      "@id": "tinyplates:basis"
    },
    "calories": {
      "@id": "tinyplates:calories",
      "@type": "@id"
    },
    "carbohydrates": {
      "@id": "tinyplates:carbohydrates",
      "@type": "@id"
    },
    "cholesterol": {
      "@id": "tinyplates:cholesterol",
      "@type": "@id"
    },
    "fat": {
      "@id": "tinyplates:fat",
      "@type": "@id"
    },
    "fiber": {
      "@id": "tinyplates:fiber",
      "@type": "@id"
    },
    "micronutrients": {
      "@id": "tinyplates:micronutrients"
    },
    "protein": {
      "@id": "tinyplates:protein",
      "@type": "@id"
    },
    "saturatedFat": {
      "@id": "tinyplates:saturatedFat",
      "@type": "@id"
    },
    "sodium": {
      "@id": "tinyplates:sodium",
      "@type": "@id"
    },
    "source": {
      "@id": "tinyplates:source",
      "@type": "xsd:string"
    },
    "sugar": {
      "@id": "tinyplates:sugar",
      "@type": "@id"
    },
    "NutrientValue": "tinyplates:NutrientValue",
    "NutrientUnit": "tinyplates:NutrientUnit",
    "Rating": "tinyplates:Rating",
    "best": {
      "@id": "tinyplates:best",
      "@type": "@id"
    },
    "count": {
      "@id": "tinyplates:count",
      "@type": "@id"
    },
    "reviewCount": {
      "@id": "tinyplates:reviewCount",
      "@type": "@id"
    },
    "worst": {
      "@id": "tinyplates:worst",
      "@type": "@id"
    },
    "Servings": "tinyplates:Servings",
    "max": {
      "@id": "tinyplates:max",
      "@type": "@id"
    },
    "original": {
      "@id": "tinyplates:original",
      "@type": "@id"
    },
    "quantity": {
      "@id": "tinyplates:quantity",
      "@type": "@id"
    },
    "RecipeTimes": "tinyplates:RecipeTimes",
    "cook": {
      "@id": "tinyplates:cook",
      "@type": "@id"
    },
    "inactive": {
      "@id": "tinyplates:inactive",
      "@type": "@id"
    },
    "prep": {
      "@id": "tinyplates:prep",
      "@type": "@id"
    },
    "RecipeAllergens": "tinyplates:RecipeAllergens",
    "celery": {
      "@id": "tinyplates:celery",
      "@type": "xsd:boolean"
    },
    "crustaceans": {
      "@id": "tinyplates:crustaceans",
      "@type": "xsd:boolean"
    },
    "eggs": {
      "@id": "tinyplates:eggs",
      "@type": "xsd:boolean"
    },
    "fish": {
      "@id": "tinyplates:fish",
      "@type": "xsd:boolean"
    },
    "gluten-cereals": {
      "@id": "tinyplates:gluten-cereals",
      "@type": "xsd:boolean"
    },
    "lupin": {
      "@id": "tinyplates:lupin",
      "@type": "xsd:boolean"
    },
    "milk": {
      "@id": "tinyplates:milk",
      "@type": "xsd:boolean"
    },
    "molluscs": {
      "@id": "tinyplates:molluscs",
      "@type": "xsd:boolean"
    },
    "mustard": {
      "@id": "tinyplates:mustard",
      "@type": "xsd:boolean"
    },
    "nuts-eu": {
      "@id": "tinyplates:nuts-eu",
      "@type": "xsd:boolean"
    },
    "peanuts": {
      "@id": "tinyplates:peanuts",
      "@type": "xsd:boolean"
    },
    "sesame": {
      "@id": "tinyplates:sesame",
      "@type": "xsd:boolean"
    },
    "soy": {
      "@id": "tinyplates:soy",
      "@type": "xsd:boolean"
    },
    "sulphites": {
      "@id": "tinyplates:sulphites",
      "@type": "xsd:boolean"
    },
    "tree-nuts-us": {
      "@id": "tinyplates:tree-nuts-us",
      "@type": "xsd:boolean"
    },
    "wheat": {
      "@id": "tinyplates:wheat",
      "@type": "xsd:boolean"
    },
    "disclaimer": {
      "@id": "tinyplates:disclaimer",
      "@type": "xsd:string"
    },
    "RecipeIngredient": "tinyplates:RecipeIngredient",
    "display": {
      "@id": "tinyplates:display",
      "@type": "@id"
    },
    "localName": {
      "@id": "tinyplates:localName",
      "@type": "@id"
    },
    "localPreparation": {
      "@id": "tinyplates:localPreparation",
      "@type": "@id"
    },
    "ingredientId": {
      "@id": "tinyplates:ingredientId",
      "@type": "xsd:string"
    },
    "note": {
      "@id": "tinyplates:note",
      "@type": "@id"
    },
    "optional": {
      "@id": "tinyplates:optional",
      "@type": "xsd:boolean"
    },
    "preparation": {
      "@id": "tinyplates:preparation",
      "@type": "@id"
    },
    "size": {
      "@id": "tinyplates:size",
      "@type": "@id"
    },
    "Quantity": "tinyplates:Quantity",
    "Unit": "tinyplates:Unit",
    "RecipeText": "tinyplates:RecipeText",
    "InvalidParameterError": "tinyplates:InvalidParameterError",
    "error": {
      "@id": "tinyplates:error"
    },
    "ApiKeyDisabledError": "tinyplates:ApiKeyDisabledError",
    "ApiKeyExpiredError": "tinyplates:ApiKeyExpiredError",
    "ApiKeyRequiredError": "tinyplates:ApiKeyRequiredError",
    "InvalidApiKeyError": "tinyplates:InvalidApiKeyError",
    "DailyAllowanceExceededError": "tinyplates:DailyAllowanceExceededError",
    "DailyLimitReachedError": "tinyplates:DailyLimitReachedError",
    "WeeklyAllowanceExceededError": "tinyplates:WeeklyAllowanceExceededError",
    "WeeklyLimitReachedError": "tinyplates:WeeklyLimitReachedError",
    "InternalError": "tinyplates:InternalError",
    "PopularRecipe": "tinyplates:PopularRecipe",
    "popularityScore": {
      "@id": "tinyplates:popularityScore",
      "@type": "xsd:decimal"
    },
    "Recipe": "tinyplates:Recipe",
    "BusinessPlanRequiredError": "tinyplates:BusinessPlanRequiredError",
    "NutritionTotals": "tinyplates:NutritionTotals",
    "basisServings": {
      "@id": "tinyplates:basisServings",
      "@type": "xsd:decimal"
    },
    "perRecipe": {
      "@id": "tinyplates:perRecipe",
      "@type": "@id"
    },
    "perServing": {
      "@id": "tinyplates:perServing",
      "@type": "@id"
    },
    "RecipeNotFoundError": "tinyplates:RecipeNotFoundError",
    "SearchResult": "tinyplates:SearchResult",
    "score": {
      "@id": "tinyplates:score",
      "@type": "xsd:decimal"
    },
    "SearchQueryRequiredError": "tinyplates:SearchQueryRequiredError",
    "ShoppingItem": "tinyplates:ShoppingItem",
    "category": {
      "@id": "tinyplates:category",
      "@type": "xsd:string"
    },
    "extras": {
      "@id": "tinyplates:extras",
      "@container": "@list"
    },
    "plusMore": {
      "@id": "tinyplates:plusMore",
      "@type": "xsd:boolean"
    },
    "recipeIds": {
      "@id": "tinyplates:recipeIds",
      "@container": "@list"
    },
    "Ingredient": "tinyplates:Ingredient",
    "aliases": {
      "@id": "tinyplates:aliases"
    },
    "names": {
      "@id": "tinyplates:names"
    },
    "recipeCount": {
      "@id": "tinyplates:recipeCount",
      "@type": "xsd:decimal"
    },
    "RegulatedAllergenFeature": "tinyplates:RegulatedAllergenFeature",
    "PageStatusCounts": "tinyplates:PageStatusCounts",
    "discovered": {
      "@id": "tinyplates:discovered",
      "@type": "xsd:decimal"
    },
    "extracted": {
      "@id": "tinyplates:extracted",
      "@type": "xsd:decimal"
    },
    "extracting": {
      "@id": "tinyplates:extracting",
      "@type": "xsd:decimal"
    },
    "failed": {
      "@id": "tinyplates:failed",
      "@type": "xsd:decimal"
    },
    "fetched": {
      "@id": "tinyplates:fetched",
      "@type": "xsd:decimal"
    },
    "fetching": {
      "@id": "tinyplates:fetching",
      "@type": "xsd:decimal"
    },
    "Substitution": "tinyplates:Substitution",
    "caution": {
      "@id": "tinyplates:caution",
      "@type": "xsd:string"
    },
    "ingredient": {
      "@id": "tinyplates:ingredient",
      "@type": "xsd:string"
    },
    "ratio": {
      "@id": "tinyplates:ratio",
      "@type": "xsd:decimal"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "tinyplates-dev API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects tinyplates-dev's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-31) from openapi/tinyplates-dev-openapi.json.",
  "dcterms:created": "2026-10-31",
  "dcterms:source": [
    "openapi/tinyplates-dev-openapi.json"
  ]
}