{
  "@context": {
    "@vocab": "https://ojo.so/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "ojo": "https://ojo.so/schema#",
    "RenderRequest": "ojo:RenderRequest",
    "id": {
      "@id": "ojo:id",
      "@type": "xsd:string"
    },
    "status": {
      "@id": "ojo:status",
      "@type": "xsd:string"
    },
    "createdAt": {
      "@id": "ojo:createdAt",
      "@type": "xsd:dateTime"
    },
    "completedAt": {
      "@id": "ojo:completedAt",
      "@type": "xsd:dateTime"
    },
    "statusCode": {
      "@id": "ojo:statusCode",
      "@type": "xsd:integer"
    },
    "result": {
      "@id": "ojo:result"
    },
    "error": {
      "@id": "ojo:error",
      "@type": "@id"
    },
    "Error": "ojo:Error",
    "message": {
      "@id": "ojo:message",
      "@type": "xsd:string"
    },
    "title": {
      "@id": "ojo:title",
      "@type": "xsd:string"
    },
    "detail": {
      "@id": "ojo:detail",
      "@type": "xsd:string"
    },
    "logs": {
      "@id": "ojo:logs",
      "@container": "@list"
    },
    "code": {
      "@id": "ojo:code",
      "@type": "xsd:string"
    },
    "retryAfter": {
      "@id": "ojo:retryAfter",
      "@type": "xsd:integer"
    },
    "ImageRender": "ojo:ImageRender",
    "imageUrl": {
      "@id": "ojo:imageUrl",
      "@type": "xsd:string"
    },
    "warnings": {
      "@id": "ojo:warnings",
      "@container": "@list"
    },
    "BulkRender": "ojo:BulkRender",
    "images": {
      "@id": "ojo:images",
      "@container": "@list"
    },
    "errors": {
      "@id": "ojo:errors",
      "@container": "@list"
    },
    "totalRequested": {
      "@id": "ojo:totalRequested",
      "@type": "xsd:integer"
    },
    "successCount": {
      "@id": "ojo:successCount",
      "@type": "xsd:integer"
    },
    "failureCount": {
      "@id": "ojo:failureCount",
      "@type": "xsd:integer"
    },
    "PdfRender": "ojo:PdfRender",
    "pdfUrl": {
      "@id": "ojo:pdfUrl",
      "@type": "xsd:string"
    },
    "pages": {
      "@id": "ojo:pages",
      "@type": "xsd:integer"
    },
    "credits": {
      "@id": "ojo:credits",
      "@type": "xsd:integer"
    },
    "entries": {
      "@id": "ojo:entries",
      "@container": "@list"
    },
    "ImageRecord": "ojo:ImageRecord",
    "PdfRecord": "ojo:PdfRecord",
    "Page": "ojo:Page",
    "items": {
      "@id": "ojo:items",
      "@container": "@list"
    },
    "totalItems": {
      "@id": "ojo:totalItems",
      "@type": "xsd:integer"
    },
    "totalPages": {
      "@id": "ojo:totalPages",
      "@type": "xsd:integer"
    },
    "currentPage": {
      "@id": "ojo:currentPage",
      "@type": "xsd:integer"
    },
    "pageSize": {
      "@id": "ojo:pageSize",
      "@type": "xsd:integer"
    },
    "TemplateListItem": "ojo:TemplateListItem",
    "name": {
      "@id": "ojo:name",
      "@type": "xsd:string"
    },
    "description": {
      "@id": "ojo:description",
      "@type": "xsd:string"
    },
    "variables": {
      "@id": "ojo:variables"
    },
    "inputs": {
      "@id": "ojo:inputs",
      "@container": "@list"
    },
    "previewUrl": {
      "@id": "ojo:previewUrl",
      "@type": "xsd:string"
    },
    "updatedAt": {
      "@id": "ojo:updatedAt",
      "@type": "xsd:string"
    },
    "template_id": {
      "@id": "ojo:template_id",
      "@type": "xsd:string"
    },
    "preview_url": {
      "@id": "ojo:preview_url",
      "@type": "xsd:string"
    },
    "created_at": {
      "@id": "ojo:created_at",
      "@type": "xsd:string"
    },
    "updated_at": {
      "@id": "ojo:updated_at",
      "@type": "xsd:string"
    },
    "Template": "ojo:Template",
    "html": {
      "@id": "ojo:html",
      "@type": "xsd:string"
    },
    "TemplateWrite": "ojo:TemplateWrite",
    "Deleted": "ojo:Deleted",
    "deleted": {
      "@id": "ojo:deleted"
    },
    "ImageBatchDelete": "ojo:ImageBatchDelete",
    "successful": {
      "@id": "ojo:successful",
      "@container": "@list"
    },
    "failed": {
      "@id": "ojo:failed",
      "@container": "@list"
    },
    "totalProcessed": {
      "@id": "ojo:totalProcessed",
      "@type": "xsd:integer"
    },
    "PdfBatchDelete": "ojo:PdfBatchDelete",
    "Credits": "ojo:Credits",
    "left": {
      "@id": "ojo:left",
      "@type": "xsd:integer"
    },
    "total": {
      "@id": "ojo:total",
      "@type": "xsd:integer"
    },
    "expiresAt": {
      "@id": "ojo:expiresAt",
      "@type": "xsd:dateTime"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "ojo-so API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects ojo-so'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/_original/api.ojo.so.json.",
  "dcterms:created": "2026-10-31",
  "dcterms:source": [
    "openapi/_original/api.ojo.so.json"
  ]
}