Goodeye · Schema

_GenerateImageBody

Request body for ``POST /image-generators/{generator_id}/runs``. The ``generator_id`` in the path is the primary generator reference. To use the authenticated one-off model path (a concrete model identifier, no deployed generator), supply ``model`` in the body and use any placeholder path segment (e.g. ``-``). ``generator`` and ``model`` are mutually exclusive in the underlying call: when ``model`` is set the path id is ignored. Caller-shape errors return 400 with no run row written. Provider and timeout errors return 201 with ``status="error"`` and an ``error_code`` of ``provider_error``, ``runtime_error``, or ``timeout``.

SkillsVerifiersPrivate DataEnterprise SSOAgent-first

Properties

Name Type Description
model object Concrete image model identifier for an authenticated one-off generation. Not usable from published templates or by anonymous callers. When set, the path ``generator_id`` is ignored and this value is u
prompt string Text description of the image to generate.
reference_image_url object Public HTTP or HTTPS URL of the reference image. Required for ``image_to_image`` generators; rejected for ``text_to_image`` ones.
num_images integer Number of images to generate in a single call (1 to 4). Each image is billed separately.
seed object Optional integer seed for reproducible output. When set, the same prompt and seed produce consistent results across runs. Leave unset for varied, non-deterministic output.
param_overrides object Per-call parameter overrides merged on top of the generator's default parameters (e.g. image size, aspect ratio). Keys not recognized by the model are passed through as-is.
version object Pin to a specific deployed generator version. Defaults to the generator's current version.
skill_id object Optional skill UUID for provenance. Access-checked: a skill the caller cannot see surfaces as 404.
skill_version object Skill version invoking this run, paired with ``skill_id``.
skill_ref object Free-form skill label (slug, name) for human-readable provenance.
run_id object Optional caller-supplied correlation ID stamped onto the run row.
visibility string Access level for the hosted copy of each generated image. ``public`` (default) returns a link that opens in any browser. ``private`` returns a link only the owner can open and forward, while the plain
View JSON Schema on GitHub

JSON Schema

goodeye-dev-generate-image-body-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/goodeye-dev/json-schema/goodeye-dev-generate-image-body-schema.json",
  "title": "_GenerateImageBody",
  "description": "Request body for ``POST /image-generators/{generator_id}/runs``.\n\nThe ``generator_id`` in the path is the primary generator reference. To\nuse the authenticated one-off model path (a concrete model identifier, no\ndeployed generator), supply ``model`` in the body and use any placeholder\npath segment (e.g. ``-``). ``generator`` and ``model`` are mutually\nexclusive in the underlying call: when ``model`` is set the path id is\nignored.\n\nCaller-shape errors return 400 with no run row written. Provider and\ntimeout errors return 201 with ``status=\"error\"`` and an ``error_code``\nof ``provider_error``, ``runtime_error``, or ``timeout``.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/goodeye-dev-openapi.json#/components/schemas/_GenerateImageBody",
  "properties": {
    "model": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Model",
      "description": "Concrete image model identifier for an authenticated one-off generation. Not usable from published templates or by anonymous callers. When set, the path ``generator_id`` is ignored and this value is used directly. Mutually exclusive with the path generator."
    },
    "prompt": {
      "type": "string",
      "minLength": 1,
      "title": "Prompt",
      "description": "Text description of the image to generate."
    },
    "reference_image_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Reference Image Url",
      "description": "Public HTTP or HTTPS URL of the reference image. Required for ``image_to_image`` generators; rejected for ``text_to_image`` ones."
    },
    "num_images": {
      "type": "integer",
      "maximum": 4.0,
      "minimum": 1.0,
      "title": "Num Images",
      "description": "Number of images to generate in a single call (1 to 4). Each image is billed separately.",
      "default": 1
    },
    "seed": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Seed",
      "description": "Optional integer seed for reproducible output. When set, the same prompt and seed produce consistent results across runs. Leave unset for varied, non-deterministic output."
    },
    "param_overrides": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Param Overrides",
      "description": "Per-call parameter overrides merged on top of the generator's default parameters (e.g. image size, aspect ratio). Keys not recognized by the model are passed through as-is."
    },
    "version": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 1.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Version",
      "description": "Pin to a specific deployed generator version. Defaults to the generator's current version."
    },
    "skill_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Skill Id",
      "description": "Optional skill UUID for provenance. Access-checked: a skill the caller cannot see surfaces as 404."
    },
    "skill_version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Skill Version",
      "description": "Skill version invoking this run, paired with ``skill_id``."
    },
    "skill_ref": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 256
        },
        {
          "type": "null"
        }
      ],
      "title": "Skill Ref",
      "description": "Free-form skill label (slug, name) for human-readable provenance."
    },
    "run_id": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 128
        },
        {
          "type": "null"
        }
      ],
      "title": "Run Id",
      "description": "Optional caller-supplied correlation ID stamped onto the run row."
    },
    "visibility": {
      "type": "string",
      "title": "Visibility",
      "description": "Access level for the hosted copy of each generated image. ``public`` (default) returns a link that opens in any browser. ``private`` returns a link only the owner can open and forward, while the plain URL stays locked. Anonymous generations are always public.",
      "default": "public"
    }
  },
  "type": "object",
  "required": [
    "prompt"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/goodeye-dev-generate-image-body"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.