{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/memesio/main/json-schema/memesio-aimemegenerationsucceededresponse-schema.json", "title": "AiMemeGenerationSucceededResponse", "description": "JSON Schema for Memesio AiMemeGenerationSucceededResponse, extracted from https://memesio.com/api/openapi (Memesio API Contracts v0.1.0).", "type": "object", "required": [ "ok", "flow", "mode", "status", "variantCount", "variants" ], "properties": { "ok": { "type": "boolean", "const": true }, "runId": { "type": "string" }, "flow": { "type": "string", "enum": [ "text_to_meme" ] }, "mode": { "type": "string", "enum": [ "template" ] }, "status": { "type": "string", "const": "succeeded" }, "variantCount": { "type": "integer", "minimum": 0 }, "variants": { "type": "array", "items": { "type": "object", "required": [ "id", "mode", "providerId", "variantKind", "memeUrl", "pageUrl", "templateName", "fallbackUsed", "attempts", "estimatedCostUsd" ], "properties": { "id": { "type": "string" }, "mode": { "type": "string", "enum": [ "template" ] }, "providerId": { "type": "string" }, "variantKind": { "type": "string", "enum": [ "template_captioned", "rendered_image" ] }, "memeUrl": { "type": [ "string", "null" ] }, "pageUrl": { "type": [ "string", "null" ] }, "templateName": { "type": [ "string", "null" ] }, "templateSlug": { "type": [ "string", "null" ] }, "sourceImageUrl": { "type": [ "string", "null" ] }, "templateSelectionStrategy": { "type": [ "string", "null" ], "enum": [ "provided_template", "provided_image", "library_search", "recommendation", null ] }, "captionGenerationStrategy": { "type": [ "string", "null" ], "enum": [ "openai", "heuristic", "provided", null ] }, "captions": { "type": "array", "items": { "$ref": "#/components/schemas/MemeCaption" } }, "editable": { "type": "boolean" }, "fallbackUsed": { "type": "boolean" }, "attempts": { "type": "array", "items": { "type": "object", "additionalProperties": true } }, "estimatedCostUsd": { "type": "number", "minimum": 0 } } } }, "degradedFromAsync": { "type": "boolean" } } }