From d66d844dd20eb9830ae835b1b40170c7d25bddaf Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Wed, 15 Mar 2023 18:52:55 +1100 Subject: [PATCH] chore(ui): update openapi.json --- .../frontend/web/src/services/openapi.json | 1822 +---------------- 1 file changed, 1 insertion(+), 1821 deletions(-) diff --git a/invokeai/frontend/web/src/services/openapi.json b/invokeai/frontend/web/src/services/openapi.json index 9ce8ea54ae..fb2cddf3e7 100644 --- a/invokeai/frontend/web/src/services/openapi.json +++ b/invokeai/frontend/web/src/services/openapi.json @@ -1,1821 +1 @@ -{ - "openapi": "3.0.2", - "info": { "title": "Invoke AI", "version": "0.1.0" }, - "paths": { - "/api/v1/sessions/": { - "get": { - "tags": ["sessions"], - "summary": "List Sessions", - "description": "Gets a list of sessions, optionally searching", - "operationId": "list_sessions", - "parameters": [ - { - "description": "The page of results to get", - "required": false, - "schema": { - "title": "Page", - "type": "integer", - "description": "The page of results to get", - "default": 0 - }, - "name": "page", - "in": "query" - }, - { - "description": "The number of results per page", - "required": false, - "schema": { - "title": "Per Page", - "type": "integer", - "description": "The number of results per page", - "default": 10 - }, - "name": "per_page", - "in": "query" - }, - { - "description": "The query string to search for", - "required": false, - "schema": { - "title": "Query", - "type": "string", - "description": "The query string to search for", - "default": "" - }, - "name": "query", - "in": "query" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PaginatedResults_GraphExecutionState_" - } - } - } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - }, - "post": { - "tags": ["sessions"], - "summary": "Create Session", - "description": "Creates a new session, optionally initializing it with an invocation graph", - "operationId": "create_session", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Graph", - "allOf": [{ "$ref": "#/components/schemas/Graph" }], - "description": "The graph to initialize the session with" - } - } - } - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "400": { "description": "Invalid json" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}": { - "get": { - "tags": ["sessions"], - "summary": "Get Session", - "description": "Gets a session", - "operationId": "get_session", - "parameters": [ - { - "description": "The id of the session to get", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session to get" - }, - "name": "session_id", - "in": "path" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}/nodes": { - "post": { - "tags": ["sessions"], - "summary": "Add Node", - "description": "Adds a node to the graph", - "operationId": "add_node", - "parameters": [ - { - "description": "The id of the session", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session" - }, - "name": "session_id", - "in": "path" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Node", - "anyOf": [ - { "$ref": "#/components/schemas/LoadImageInvocation" }, - { "$ref": "#/components/schemas/ShowImageInvocation" }, - { "$ref": "#/components/schemas/CropImageInvocation" }, - { "$ref": "#/components/schemas/PasteImageInvocation" }, - { "$ref": "#/components/schemas/MaskFromAlphaInvocation" }, - { "$ref": "#/components/schemas/BlurInvocation" }, - { "$ref": "#/components/schemas/LerpInvocation" }, - { "$ref": "#/components/schemas/InverseLerpInvocation" }, - { "$ref": "#/components/schemas/CvInpaintInvocation" }, - { "$ref": "#/components/schemas/UpscaleInvocation" }, - { "$ref": "#/components/schemas/RestoreFaceInvocation" }, - { "$ref": "#/components/schemas/TextToImageInvocation" }, - { "$ref": "#/components/schemas/GraphInvocation" }, - { "$ref": "#/components/schemas/IterateInvocation" }, - { "$ref": "#/components/schemas/CollectInvocation" }, - { "$ref": "#/components/schemas/ImageToImageInvocation" }, - { "$ref": "#/components/schemas/InpaintInvocation" } - ], - "description": "The node to add" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "title": "Response 200 Add Node", "type": "string" } - } - } - }, - "400": { "description": "Invalid node or link" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}/nodes/{node_path}": { - "put": { - "tags": ["sessions"], - "summary": "Update Node", - "description": "Updates a node in the graph and removes all linked edges", - "operationId": "update_node", - "parameters": [ - { - "description": "The id of the session", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session" - }, - "name": "session_id", - "in": "path" - }, - { - "description": "The path to the node in the graph", - "required": true, - "schema": { - "title": "Node Path", - "type": "string", - "description": "The path to the node in the graph" - }, - "name": "node_path", - "in": "path" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Node", - "anyOf": [ - { "$ref": "#/components/schemas/LoadImageInvocation" }, - { "$ref": "#/components/schemas/ShowImageInvocation" }, - { "$ref": "#/components/schemas/CropImageInvocation" }, - { "$ref": "#/components/schemas/PasteImageInvocation" }, - { "$ref": "#/components/schemas/MaskFromAlphaInvocation" }, - { "$ref": "#/components/schemas/BlurInvocation" }, - { "$ref": "#/components/schemas/LerpInvocation" }, - { "$ref": "#/components/schemas/InverseLerpInvocation" }, - { "$ref": "#/components/schemas/CvInpaintInvocation" }, - { "$ref": "#/components/schemas/UpscaleInvocation" }, - { "$ref": "#/components/schemas/RestoreFaceInvocation" }, - { "$ref": "#/components/schemas/TextToImageInvocation" }, - { "$ref": "#/components/schemas/GraphInvocation" }, - { "$ref": "#/components/schemas/IterateInvocation" }, - { "$ref": "#/components/schemas/CollectInvocation" }, - { "$ref": "#/components/schemas/ImageToImageInvocation" }, - { "$ref": "#/components/schemas/InpaintInvocation" } - ], - "description": "The new node" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "400": { "description": "Invalid node or link" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - }, - "delete": { - "tags": ["sessions"], - "summary": "Delete Node", - "description": "Deletes a node in the graph and removes all linked edges", - "operationId": "delete_node", - "parameters": [ - { - "description": "The id of the session", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session" - }, - "name": "session_id", - "in": "path" - }, - { - "description": "The path to the node to delete", - "required": true, - "schema": { - "title": "Node Path", - "type": "string", - "description": "The path to the node to delete" - }, - "name": "node_path", - "in": "path" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "400": { "description": "Invalid node or link" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}/edges": { - "post": { - "tags": ["sessions"], - "summary": "Add Edge", - "description": "Adds an edge to the graph", - "operationId": "add_edge", - "parameters": [ - { - "description": "The id of the session", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session" - }, - "name": "session_id", - "in": "path" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Edge", - "maxItems": 2, - "minItems": 2, - "type": "array", - "items": [ - { "$ref": "#/components/schemas/EdgeConnection" }, - { "$ref": "#/components/schemas/EdgeConnection" } - ], - "description": "The edge to add" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "400": { "description": "Invalid node or link" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}/edges/{from_node_id}/{from_field}/{to_node_id}/{to_field}": { - "delete": { - "tags": ["sessions"], - "summary": "Delete Edge", - "description": "Deletes an edge from the graph", - "operationId": "delete_edge", - "parameters": [ - { - "description": "The id of the session", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session" - }, - "name": "session_id", - "in": "path" - }, - { - "description": "The id of the node the edge is coming from", - "required": true, - "schema": { - "title": "From Node Id", - "type": "string", - "description": "The id of the node the edge is coming from" - }, - "name": "from_node_id", - "in": "path" - }, - { - "description": "The field of the node the edge is coming from", - "required": true, - "schema": { - "title": "From Field", - "type": "string", - "description": "The field of the node the edge is coming from" - }, - "name": "from_field", - "in": "path" - }, - { - "description": "The id of the node the edge is going to", - "required": true, - "schema": { - "title": "To Node Id", - "type": "string", - "description": "The id of the node the edge is going to" - }, - "name": "to_node_id", - "in": "path" - }, - { - "description": "The field of the node the edge is going to", - "required": true, - "schema": { - "title": "To Field", - "type": "string", - "description": "The field of the node the edge is going to" - }, - "name": "to_field", - "in": "path" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/GraphExecutionState" } - } - } - }, - "400": { "description": "Invalid node or link" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/sessions/{session_id}/invoke": { - "put": { - "tags": ["sessions"], - "summary": "Invoke Session", - "description": "Invokes a session", - "operationId": "invoke_session", - "parameters": [ - { - "description": "The id of the session to invoke", - "required": true, - "schema": { - "title": "Session Id", - "type": "string", - "description": "The id of the session to invoke" - }, - "name": "session_id", - "in": "path" - }, - { - "description": "Whether or not to invoke all remaining invocations", - "required": false, - "schema": { - "title": "All", - "type": "boolean", - "description": "Whether or not to invoke all remaining invocations", - "default": false - }, - "name": "all", - "in": "query" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { "application/json": { "schema": {} } } - }, - "202": { "description": "The invocation is queued" }, - "400": { - "description": "The session has no invocations ready to invoke" - }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/images/{image_type}/{image_name}": { - "get": { - "tags": ["images"], - "summary": "Get Image", - "description": "Gets a result", - "operationId": "get_image", - "parameters": [ - { - "description": "The type of image to get", - "required": true, - "schema": { - "allOf": [{ "$ref": "#/components/schemas/ImageType" }], - "description": "The type of image to get" - }, - "name": "image_type", - "in": "path" - }, - { - "description": "The name of the image to get", - "required": true, - "schema": { - "title": "Image Name", - "type": "string", - "description": "The name of the image to get" - }, - "name": "image_name", - "in": "path" - } - ], - "responses": { - "200": { - "description": "Successful Response", - "content": { "application/json": { "schema": {} } } - }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - }, - "/api/v1/images/uploads/": { - "post": { - "tags": ["images"], - "summary": "Upload Image", - "operationId": "upload_image", - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { "$ref": "#/components/schemas/Body_upload_image" } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Successful Response", - "content": { "application/json": { "schema": {} } } - }, - "201": { "description": "The image was uploaded successfully" }, - "404": { "description": "Session not found" }, - "422": { - "description": "Validation Error", - "content": { - "application/json": { - "schema": { "$ref": "#/components/schemas/HTTPValidationError" } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "BlurInvocation": { - "title": "BlurInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["blur"], - "type": "string", - "default": "blur" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to blur" - }, - "radius": { - "title": "Radius", - "minimum": 0.0, - "type": "number", - "description": "The blur radius", - "default": 8.0 - }, - "blur_type": { - "title": "Blur Type", - "enum": ["gaussian", "box"], - "type": "string", - "description": "The type of blur", - "default": "gaussian" - } - }, - "description": "Blurs an image" - }, - "Body_upload_image": { - "title": "Body_upload_image", - "required": ["file"], - "type": "object", - "properties": { - "file": { "title": "File", "type": "string", "format": "binary" } - } - }, - "CollectInvocation": { - "title": "CollectInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["collect"], - "type": "string", - "default": "collect" - }, - "item": { - "title": "Item", - "description": "The item to collect (all inputs must be of the same type)" - }, - "collection": { - "title": "Collection", - "type": "array", - "items": {}, - "description": "The collection, will be provided on execution" - } - }, - "description": "Collects values into a collection" - }, - "CollectInvocationOutput": { - "title": "CollectInvocationOutput", - "required": ["collection"], - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["collect_output"], - "type": "string", - "default": "collect_output" - }, - "collection": { - "title": "Collection", - "type": "array", - "items": {}, - "description": "The collection of input items" - } - }, - "description": "Base class for all invocation outputs" - }, - "CropImageInvocation": { - "title": "CropImageInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["crop"], - "type": "string", - "default": "crop" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to crop" - }, - "x": { - "title": "X", - "type": "integer", - "description": "The left x coordinate of the crop rectangle", - "default": 0 - }, - "y": { - "title": "Y", - "type": "integer", - "description": "The top y coordinate of the crop rectangle", - "default": 0 - }, - "width": { - "title": "Width", - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The width of the crop rectangle", - "default": 512 - }, - "height": { - "title": "Height", - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The height of the crop rectangle", - "default": 512 - } - }, - "description": "Crops an image to a specified box. The box can be outside of the image." - }, - "CvInpaintInvocation": { - "title": "CvInpaintInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["cv_inpaint"], - "type": "string", - "default": "cv_inpaint" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to inpaint" - }, - "mask": { - "title": "Mask", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The mask to use when inpainting" - } - }, - "description": "Simple inpaint using opencv." - }, - "EdgeConnection": { - "title": "EdgeConnection", - "required": ["node_id", "field"], - "type": "object", - "properties": { - "node_id": { - "title": "Node Id", - "type": "string", - "description": "The id of the node for this edge connection" - }, - "field": { - "title": "Field", - "type": "string", - "description": "The field for this connection" - } - } - }, - "Graph": { - "title": "Graph", - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this graph" - }, - "nodes": { - "title": "Nodes", - "type": "object", - "additionalProperties": { - "oneOf": [ - { "$ref": "#/components/schemas/LoadImageInvocation" }, - { "$ref": "#/components/schemas/ShowImageInvocation" }, - { "$ref": "#/components/schemas/CropImageInvocation" }, - { "$ref": "#/components/schemas/PasteImageInvocation" }, - { "$ref": "#/components/schemas/MaskFromAlphaInvocation" }, - { "$ref": "#/components/schemas/BlurInvocation" }, - { "$ref": "#/components/schemas/LerpInvocation" }, - { "$ref": "#/components/schemas/InverseLerpInvocation" }, - { "$ref": "#/components/schemas/CvInpaintInvocation" }, - { "$ref": "#/components/schemas/UpscaleInvocation" }, - { "$ref": "#/components/schemas/RestoreFaceInvocation" }, - { "$ref": "#/components/schemas/TextToImageInvocation" }, - { "$ref": "#/components/schemas/GraphInvocation" }, - { "$ref": "#/components/schemas/IterateInvocation" }, - { "$ref": "#/components/schemas/CollectInvocation" }, - { "$ref": "#/components/schemas/ImageToImageInvocation" }, - { "$ref": "#/components/schemas/InpaintInvocation" } - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "load_image": "#/components/schemas/LoadImageInvocation", - "show_image": "#/components/schemas/ShowImageInvocation", - "crop": "#/components/schemas/CropImageInvocation", - "paste": "#/components/schemas/PasteImageInvocation", - "tomask": "#/components/schemas/MaskFromAlphaInvocation", - "blur": "#/components/schemas/BlurInvocation", - "lerp": "#/components/schemas/LerpInvocation", - "ilerp": "#/components/schemas/InverseLerpInvocation", - "cv_inpaint": "#/components/schemas/CvInpaintInvocation", - "upscale": "#/components/schemas/UpscaleInvocation", - "restore_face": "#/components/schemas/RestoreFaceInvocation", - "txt2img": "#/components/schemas/TextToImageInvocation", - "graph": "#/components/schemas/GraphInvocation", - "iterate": "#/components/schemas/IterateInvocation", - "collect": "#/components/schemas/CollectInvocation", - "img2img": "#/components/schemas/ImageToImageInvocation", - "inpaint": "#/components/schemas/InpaintInvocation" - } - } - }, - "description": "The nodes in this graph" - }, - "edges": { - "title": "Edges", - "type": "array", - "items": { - "maxItems": 2, - "minItems": 2, - "type": "array", - "items": [ - { "$ref": "#/components/schemas/EdgeConnection" }, - { "$ref": "#/components/schemas/EdgeConnection" } - ] - }, - "description": "The connections between nodes and their fields in this graph" - } - } - }, - "GraphExecutionState": { - "title": "GraphExecutionState", - "required": ["graph"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of the execution state" - }, - "graph": { - "title": "Graph", - "allOf": [{ "$ref": "#/components/schemas/Graph" }], - "description": "The graph being executed" - }, - "execution_graph": { - "title": "Execution Graph", - "allOf": [{ "$ref": "#/components/schemas/Graph" }], - "description": "The expanded graph of activated and executed nodes" - }, - "executed": { - "title": "Executed", - "uniqueItems": true, - "type": "array", - "items": { "type": "string" }, - "description": "The set of node ids that have been executed" - }, - "executed_history": { - "title": "Executed History", - "type": "array", - "items": { "type": "string" }, - "description": "The list of node ids that have been executed, in order of execution" - }, - "results": { - "title": "Results", - "type": "object", - "additionalProperties": { - "oneOf": [ - { "$ref": "#/components/schemas/ImageOutput" }, - { "$ref": "#/components/schemas/MaskOutput" }, - { "$ref": "#/components/schemas/PromptOutput" }, - { "$ref": "#/components/schemas/GraphInvocationOutput" }, - { "$ref": "#/components/schemas/IterateInvocationOutput" }, - { "$ref": "#/components/schemas/CollectInvocationOutput" } - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "image": "#/components/schemas/ImageOutput", - "mask": "#/components/schemas/MaskOutput", - "prompt": "#/components/schemas/PromptOutput", - "graph_output": "#/components/schemas/GraphInvocationOutput", - "iterate_output": "#/components/schemas/IterateInvocationOutput", - "collect_output": "#/components/schemas/CollectInvocationOutput" - } - } - }, - "description": "The results of node executions" - }, - "errors": { - "title": "Errors", - "type": "object", - "additionalProperties": { "type": "string" }, - "description": "Errors raised when executing nodes" - }, - "prepared_source_mapping": { - "title": "Prepared Source Mapping", - "type": "object", - "additionalProperties": { "type": "string" }, - "description": "The map of prepared nodes to original graph nodes" - }, - "source_prepared_mapping": { - "title": "Source Prepared Mapping", - "type": "object", - "additionalProperties": { - "uniqueItems": true, - "type": "array", - "items": { "type": "string" } - }, - "description": "The map of original graph nodes to prepared nodes" - } - }, - "description": "Tracks the state of a graph execution" - }, - "GraphInvocation": { - "title": "GraphInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["graph"], - "type": "string", - "default": "graph" - }, - "graph": { - "title": "Graph", - "allOf": [{ "$ref": "#/components/schemas/Graph" }], - "description": "The graph to run" - } - }, - "description": "A node to process inputs and produce outputs.\nMay use dependency injection in __init__ to receive providers." - }, - "GraphInvocationOutput": { - "title": "GraphInvocationOutput", - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["graph_output"], - "type": "string", - "default": "graph_output" - } - }, - "description": "Base class for all invocation outputs" - }, - "HTTPValidationError": { - "title": "HTTPValidationError", - "type": "object", - "properties": { - "detail": { - "title": "Detail", - "type": "array", - "items": { "$ref": "#/components/schemas/ValidationError" } - } - } - }, - "ImageField": { - "title": "ImageField", - "type": "object", - "properties": { - "image_type": { - "title": "Image Type", - "type": "string", - "description": "The type of the image", - "default": "results" - }, - "image_name": { - "title": "Image Name", - "type": "string", - "description": "The name of the image" - } - }, - "description": "An image field used for passing image objects between invocations" - }, - "ImageOutput": { - "title": "ImageOutput", - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["image"], - "type": "string", - "default": "image" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The output image" - } - }, - "description": "Base class for invocations that output an image" - }, - "ImageToImageInvocation": { - "title": "ImageToImageInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["img2img"], - "type": "string", - "default": "img2img" - }, - "prompt": { - "title": "Prompt", - "type": "string", - "description": "The prompt to generate an image from" - }, - "seed": { - "title": "Seed", - "maximum": 4294967295.0, - "minimum": -1.0, - "type": "integer", - "description": "The seed to use (-1 for a random seed)", - "default": -1 - }, - "steps": { - "title": "Steps", - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The number of steps to use to generate the image", - "default": 10 - }, - "width": { - "title": "Width", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The width of the resulting image", - "default": 512 - }, - "height": { - "title": "Height", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The height of the resulting image", - "default": 512 - }, - "cfg_scale": { - "title": "Cfg Scale", - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The Classifier-Free Guidance, higher values may result in a result closer to the prompt", - "default": 7.5 - }, - "sampler_name": { - "title": "Sampler Name", - "enum": [ - "ddim", - "dpmpp_2", - "k_dpm_2", - "k_dpm_2_a", - "k_dpmpp_2", - "k_euler", - "k_euler_a", - "k_heun", - "k_lms", - "plms" - ], - "type": "string", - "description": "The sampler to use", - "default": "k_lms" - }, - "seamless": { - "title": "Seamless", - "type": "boolean", - "description": "Whether or not to generate an image that can tile without seams", - "default": false - }, - "model": { - "title": "Model", - "type": "string", - "description": "The model to use (currently ignored)", - "default": "" - }, - "progress_images": { - "title": "Progress Images", - "type": "boolean", - "description": "Whether or not to produce progress images during generation", - "default": false - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The input image" - }, - "strength": { - "title": "Strength", - "maximum": 1.0, - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The strength of the original image", - "default": 0.75 - }, - "fit": { - "title": "Fit", - "type": "boolean", - "description": "Whether or not the result should be fit to the aspect ratio of the input image", - "default": true - } - }, - "description": "Generates an image using img2img." - }, - "ImageType": { - "title": "ImageType", - "enum": ["results", "intermediates", "uploads"], - "type": "string", - "description": "An enumeration." - }, - "InpaintInvocation": { - "title": "InpaintInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["inpaint"], - "type": "string", - "default": "inpaint" - }, - "prompt": { - "title": "Prompt", - "type": "string", - "description": "The prompt to generate an image from" - }, - "seed": { - "title": "Seed", - "maximum": 4294967295.0, - "minimum": -1.0, - "type": "integer", - "description": "The seed to use (-1 for a random seed)", - "default": -1 - }, - "steps": { - "title": "Steps", - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The number of steps to use to generate the image", - "default": 10 - }, - "width": { - "title": "Width", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The width of the resulting image", - "default": 512 - }, - "height": { - "title": "Height", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The height of the resulting image", - "default": 512 - }, - "cfg_scale": { - "title": "Cfg Scale", - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The Classifier-Free Guidance, higher values may result in a result closer to the prompt", - "default": 7.5 - }, - "sampler_name": { - "title": "Sampler Name", - "enum": [ - "ddim", - "dpmpp_2", - "k_dpm_2", - "k_dpm_2_a", - "k_dpmpp_2", - "k_euler", - "k_euler_a", - "k_heun", - "k_lms", - "plms" - ], - "type": "string", - "description": "The sampler to use", - "default": "k_lms" - }, - "seamless": { - "title": "Seamless", - "type": "boolean", - "description": "Whether or not to generate an image that can tile without seams", - "default": false - }, - "model": { - "title": "Model", - "type": "string", - "description": "The model to use (currently ignored)", - "default": "" - }, - "progress_images": { - "title": "Progress Images", - "type": "boolean", - "description": "Whether or not to produce progress images during generation", - "default": false - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The input image" - }, - "strength": { - "title": "Strength", - "maximum": 1.0, - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The strength of the original image", - "default": 0.75 - }, - "fit": { - "title": "Fit", - "type": "boolean", - "description": "Whether or not the result should be fit to the aspect ratio of the input image", - "default": true - }, - "mask": { - "title": "Mask", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The mask" - }, - "inpaint_replace": { - "title": "Inpaint Replace", - "maximum": 1.0, - "minimum": 0.0, - "type": "number", - "description": "The amount by which to replace masked areas with latent noise", - "default": 0.0 - } - }, - "description": "Generates an image using inpaint." - }, - "InverseLerpInvocation": { - "title": "InverseLerpInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["ilerp"], - "type": "string", - "default": "ilerp" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to lerp" - }, - "min": { - "title": "Min", - "maximum": 255.0, - "minimum": 0.0, - "type": "integer", - "description": "The minimum input value", - "default": 0 - }, - "max": { - "title": "Max", - "maximum": 255.0, - "minimum": 0.0, - "type": "integer", - "description": "The maximum input value", - "default": 255 - } - }, - "description": "Inverse linear interpolation of all pixels of an image" - }, - "IterateInvocation": { - "title": "IterateInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["iterate"], - "type": "string", - "default": "iterate" - }, - "collection": { - "title": "Collection", - "type": "array", - "items": {}, - "description": "The list of items to iterate over" - }, - "index": { - "title": "Index", - "type": "integer", - "description": "The index, will be provided on executed iterators", - "default": 0 - } - }, - "description": "A node to process inputs and produce outputs.\nMay use dependency injection in __init__ to receive providers." - }, - "IterateInvocationOutput": { - "title": "IterateInvocationOutput", - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["iterate_output"], - "type": "string", - "default": "iterate_output" - }, - "item": { - "title": "Item", - "description": "The item being iterated over" - } - }, - "description": "Used to connect iteration outputs. Will be expanded to a specific output." - }, - "LerpInvocation": { - "title": "LerpInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["lerp"], - "type": "string", - "default": "lerp" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to lerp" - }, - "min": { - "title": "Min", - "maximum": 255.0, - "minimum": 0.0, - "type": "integer", - "description": "The minimum output value", - "default": 0 - }, - "max": { - "title": "Max", - "maximum": 255.0, - "minimum": 0.0, - "type": "integer", - "description": "The maximum output value", - "default": 255 - } - }, - "description": "Linear interpolation of all pixels of an image" - }, - "LoadImageInvocation": { - "title": "LoadImageInvocation", - "required": ["id", "image_type", "image_name"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["load_image"], - "type": "string", - "default": "load_image" - }, - "image_type": { - "allOf": [{ "$ref": "#/components/schemas/ImageType" }], - "description": "The type of the image" - }, - "image_name": { - "title": "Image Name", - "type": "string", - "description": "The name of the image" - } - }, - "description": "Load an image from a filename and provide it as output." - }, - "MaskFromAlphaInvocation": { - "title": "MaskFromAlphaInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["tomask"], - "type": "string", - "default": "tomask" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to create the mask from" - }, - "invert": { - "title": "Invert", - "type": "boolean", - "description": "Whether or not to invert the mask", - "default": false - } - }, - "description": "Extracts the alpha channel of an image as a mask." - }, - "MaskOutput": { - "title": "MaskOutput", - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["mask"], - "type": "string", - "default": "mask" - }, - "mask": { - "title": "Mask", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The output mask" - } - }, - "description": "Base class for invocations that output a mask" - }, - "PaginatedResults_GraphExecutionState_": { - "title": "PaginatedResults[GraphExecutionState]", - "required": ["items", "page", "pages", "per_page", "total"], - "type": "object", - "properties": { - "items": { - "title": "Items", - "type": "array", - "items": { "$ref": "#/components/schemas/GraphExecutionState" }, - "description": "Items" - }, - "page": { - "title": "Page", - "type": "integer", - "description": "Current Page" - }, - "pages": { - "title": "Pages", - "type": "integer", - "description": "Total number of pages" - }, - "per_page": { - "title": "Per Page", - "type": "integer", - "description": "Number of items per page" - }, - "total": { - "title": "Total", - "type": "integer", - "description": "Total number of items in result" - } - }, - "description": "Paginated results" - }, - "PasteImageInvocation": { - "title": "PasteImageInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["paste"], - "type": "string", - "default": "paste" - }, - "base_image": { - "title": "Base Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The base image" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to paste" - }, - "mask": { - "title": "Mask", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The mask to use when pasting" - }, - "x": { - "title": "X", - "type": "integer", - "description": "The left x coordinate at which to paste the image", - "default": 0 - }, - "y": { - "title": "Y", - "type": "integer", - "description": "The top y coordinate at which to paste the image", - "default": 0 - } - }, - "description": "Pastes an image into another image." - }, - "PromptOutput": { - "title": "PromptOutput", - "type": "object", - "properties": { - "type": { - "title": "Type", - "enum": ["prompt"], - "type": "string", - "default": "prompt" - }, - "prompt": { - "title": "Prompt", - "type": "string", - "description": "The output prompt" - } - }, - "description": "Base class for invocations that output a prompt" - }, - "RestoreFaceInvocation": { - "title": "RestoreFaceInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["restore_face"], - "type": "string", - "default": "restore_face" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The input image" - }, - "strength": { - "title": "Strength", - "maximum": 1.0, - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The strength of the restoration", - "default": 0.75 - } - }, - "description": "Restores faces in an image." - }, - "ShowImageInvocation": { - "title": "ShowImageInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["show_image"], - "type": "string", - "default": "show_image" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The image to show" - } - }, - "description": "Displays a provided image, and passes it forward in the pipeline." - }, - "TextToImageInvocation": { - "title": "TextToImageInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["txt2img"], - "type": "string", - "default": "txt2img" - }, - "prompt": { - "title": "Prompt", - "type": "string", - "description": "The prompt to generate an image from" - }, - "seed": { - "title": "Seed", - "maximum": 4294967295.0, - "minimum": -1.0, - "type": "integer", - "description": "The seed to use (-1 for a random seed)", - "default": -1 - }, - "steps": { - "title": "Steps", - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The number of steps to use to generate the image", - "default": 10 - }, - "width": { - "title": "Width", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The width of the resulting image", - "default": 512 - }, - "height": { - "title": "Height", - "multipleOf": 64.0, - "exclusiveMinimum": 0.0, - "type": "integer", - "description": "The height of the resulting image", - "default": 512 - }, - "cfg_scale": { - "title": "Cfg Scale", - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The Classifier-Free Guidance, higher values may result in a result closer to the prompt", - "default": 7.5 - }, - "sampler_name": { - "title": "Sampler Name", - "enum": [ - "ddim", - "dpmpp_2", - "k_dpm_2", - "k_dpm_2_a", - "k_dpmpp_2", - "k_euler", - "k_euler_a", - "k_heun", - "k_lms", - "plms" - ], - "type": "string", - "description": "The sampler to use", - "default": "k_lms" - }, - "seamless": { - "title": "Seamless", - "type": "boolean", - "description": "Whether or not to generate an image that can tile without seams", - "default": false - }, - "model": { - "title": "Model", - "type": "string", - "description": "The model to use (currently ignored)", - "default": "" - }, - "progress_images": { - "title": "Progress Images", - "type": "boolean", - "description": "Whether or not to produce progress images during generation", - "default": false - } - }, - "description": "Generates an image using text2img." - }, - "UpscaleInvocation": { - "title": "UpscaleInvocation", - "required": ["id"], - "type": "object", - "properties": { - "id": { - "title": "Id", - "type": "string", - "description": "The id of this node. Must be unique among all nodes." - }, - "type": { - "title": "Type", - "enum": ["upscale"], - "type": "string", - "default": "upscale" - }, - "image": { - "title": "Image", - "allOf": [{ "$ref": "#/components/schemas/ImageField" }], - "description": "The input image" - }, - "strength": { - "title": "Strength", - "maximum": 1.0, - "exclusiveMinimum": 0.0, - "type": "number", - "description": "The strength", - "default": 0.75 - }, - "level": { - "title": "Level", - "enum": [2, 4], - "type": "integer", - "description": "The upscale level", - "default": 2 - } - }, - "description": "Upscales an image." - }, - "ValidationError": { - "title": "ValidationError", - "required": ["loc", "msg", "type"], - "type": "object", - "properties": { - "loc": { - "title": "Location", - "type": "array", - "items": { "anyOf": [{ "type": "string" }, { "type": "integer" }] } - }, - "msg": { "title": "Message", "type": "string" }, - "type": { "title": "Error Type", "type": "string" } - } - } - } - } -} +{"openapi":"3.0.2","info":{"title":"Invoke AI","description":"An API for invoking AI image operations","version":"1.0.0"},"paths":{"/api/v1/sessions/":{"get":{"tags":["sessions"],"summary":"List Sessions","description":"Gets a list of sessions, optionally searching","operationId":"list_sessions","parameters":[{"description":"The page of results to get","required":false,"schema":{"title":"Page","type":"integer","description":"The page of results to get","default":0},"name":"page","in":"query"},{"description":"The number of results per page","required":false,"schema":{"title":"Per Page","type":"integer","description":"The number of results per page","default":10},"name":"per_page","in":"query"},{"description":"The query string to search for","required":false,"schema":{"title":"Query","type":"string","description":"The query string to search for","default":""},"name":"query","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedResults_GraphExecutionState_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["sessions"],"summary":"Create Session","description":"Creates a new session, optionally initializing it with an invocation graph","operationId":"create_session","requestBody":{"content":{"application/json":{"schema":{"title":"Graph","allOf":[{"$ref":"#/components/schemas/Graph"}],"description":"The graph to initialize the session with"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"400":{"description":"Invalid json"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}":{"get":{"tags":["sessions"],"summary":"Get Session","description":"Gets a session","operationId":"get_session","parameters":[{"description":"The id of the session to get","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session to get"},"name":"session_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}/nodes":{"post":{"tags":["sessions"],"summary":"Add Node","description":"Adds a node to the graph","operationId":"add_node","parameters":[{"description":"The id of the session","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session"},"name":"session_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Node","anyOf":[{"$ref":"#/components/schemas/LoadImageInvocation"},{"$ref":"#/components/schemas/ShowImageInvocation"},{"$ref":"#/components/schemas/CropImageInvocation"},{"$ref":"#/components/schemas/PasteImageInvocation"},{"$ref":"#/components/schemas/MaskFromAlphaInvocation"},{"$ref":"#/components/schemas/BlurInvocation"},{"$ref":"#/components/schemas/LerpInvocation"},{"$ref":"#/components/schemas/InverseLerpInvocation"},{"$ref":"#/components/schemas/CvInpaintInvocation"},{"$ref":"#/components/schemas/UpscaleInvocation"},{"$ref":"#/components/schemas/RestoreFaceInvocation"},{"$ref":"#/components/schemas/TextToImageInvocation"},{"$ref":"#/components/schemas/GraphInvocation"},{"$ref":"#/components/schemas/IterateInvocation"},{"$ref":"#/components/schemas/CollectInvocation"},{"$ref":"#/components/schemas/ImageToImageInvocation"},{"$ref":"#/components/schemas/InpaintInvocation"}],"description":"The node to add"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response 200 Add Node","type":"string"}}}},"400":{"description":"Invalid node or link"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}/nodes/{node_path}":{"put":{"tags":["sessions"],"summary":"Update Node","description":"Updates a node in the graph and removes all linked edges","operationId":"update_node","parameters":[{"description":"The id of the session","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session"},"name":"session_id","in":"path"},{"description":"The path to the node in the graph","required":true,"schema":{"title":"Node Path","type":"string","description":"The path to the node in the graph"},"name":"node_path","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Node","anyOf":[{"$ref":"#/components/schemas/LoadImageInvocation"},{"$ref":"#/components/schemas/ShowImageInvocation"},{"$ref":"#/components/schemas/CropImageInvocation"},{"$ref":"#/components/schemas/PasteImageInvocation"},{"$ref":"#/components/schemas/MaskFromAlphaInvocation"},{"$ref":"#/components/schemas/BlurInvocation"},{"$ref":"#/components/schemas/LerpInvocation"},{"$ref":"#/components/schemas/InverseLerpInvocation"},{"$ref":"#/components/schemas/CvInpaintInvocation"},{"$ref":"#/components/schemas/UpscaleInvocation"},{"$ref":"#/components/schemas/RestoreFaceInvocation"},{"$ref":"#/components/schemas/TextToImageInvocation"},{"$ref":"#/components/schemas/GraphInvocation"},{"$ref":"#/components/schemas/IterateInvocation"},{"$ref":"#/components/schemas/CollectInvocation"},{"$ref":"#/components/schemas/ImageToImageInvocation"},{"$ref":"#/components/schemas/InpaintInvocation"}],"description":"The new node"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"400":{"description":"Invalid node or link"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["sessions"],"summary":"Delete Node","description":"Deletes a node in the graph and removes all linked edges","operationId":"delete_node","parameters":[{"description":"The id of the session","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session"},"name":"session_id","in":"path"},{"description":"The path to the node to delete","required":true,"schema":{"title":"Node Path","type":"string","description":"The path to the node to delete"},"name":"node_path","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"400":{"description":"Invalid node or link"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}/edges":{"post":{"tags":["sessions"],"summary":"Add Edge","description":"Adds an edge to the graph","operationId":"add_edge","parameters":[{"description":"The id of the session","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session"},"name":"session_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Edge","allOf":[{"$ref":"#/components/schemas/Edge"}],"description":"The edge to add"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"400":{"description":"Invalid node or link"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}/edges/{from_node_id}/{from_field}/{to_node_id}/{to_field}":{"delete":{"tags":["sessions"],"summary":"Delete Edge","description":"Deletes an edge from the graph","operationId":"delete_edge","parameters":[{"description":"The id of the session","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session"},"name":"session_id","in":"path"},{"description":"The id of the node the edge is coming from","required":true,"schema":{"title":"From Node Id","type":"string","description":"The id of the node the edge is coming from"},"name":"from_node_id","in":"path"},{"description":"The field of the node the edge is coming from","required":true,"schema":{"title":"From Field","type":"string","description":"The field of the node the edge is coming from"},"name":"from_field","in":"path"},{"description":"The id of the node the edge is going to","required":true,"schema":{"title":"To Node Id","type":"string","description":"The id of the node the edge is going to"},"name":"to_node_id","in":"path"},{"description":"The field of the node the edge is going to","required":true,"schema":{"title":"To Field","type":"string","description":"The field of the node the edge is going to"},"name":"to_field","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GraphExecutionState"}}}},"400":{"description":"Invalid node or link"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sessions/{session_id}/invoke":{"put":{"tags":["sessions"],"summary":"Invoke Session","description":"Invokes a session","operationId":"invoke_session","parameters":[{"description":"The id of the session to invoke","required":true,"schema":{"title":"Session Id","type":"string","description":"The id of the session to invoke"},"name":"session_id","in":"path"},{"description":"Whether or not to invoke all remaining invocations","required":false,"schema":{"title":"All","type":"boolean","description":"Whether or not to invoke all remaining invocations","default":false},"name":"all","in":"query"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"202":{"description":"The invocation is queued"},"400":{"description":"The session has no invocations ready to invoke"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/images/{image_type}/{image_name}":{"get":{"tags":["images"],"summary":"Get Image","description":"Gets a result","operationId":"get_image","parameters":[{"description":"The type of image to get","required":true,"schema":{"allOf":[{"$ref":"#/components/schemas/ImageType"}],"description":"The type of image to get"},"name":"image_type","in":"path"},{"description":"The name of the image to get","required":true,"schema":{"title":"Image Name","type":"string","description":"The name of the image to get"},"name":"image_name","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/images/uploads/":{"post":{"tags":["images"],"summary":"Upload Image","operationId":"upload_image","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_image"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"201":{"description":"The image was uploaded successfully"},"404":{"description":"Session not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"BlurInvocation":{"title":"BlurInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["blur"],"type":"string","default":"blur"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to blur"},"radius":{"title":"Radius","minimum":0.0,"type":"number","description":"The blur radius","default":8.0},"blur_type":{"title":"Blur Type","enum":["gaussian","box"],"type":"string","description":"The type of blur","default":"gaussian"}},"description":"Blurs an image","output":{"$ref":"#/components/schemas/ImageOutput"}},"Body_upload_image":{"title":"Body_upload_image","required":["file"],"type":"object","properties":{"file":{"title":"File","type":"string","format":"binary"}}},"CollectInvocation":{"title":"CollectInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["collect"],"type":"string","default":"collect"},"item":{"title":"Item","description":"The item to collect (all inputs must be of the same type)"},"collection":{"title":"Collection","type":"array","items":{},"description":"The collection, will be provided on execution"}},"description":"Collects values into a collection","output":{"$ref":"#/components/schemas/CollectInvocationOutput"}},"CollectInvocationOutput":{"title":"CollectInvocationOutput","description":"Base class for all invocation outputs","type":"object","properties":{"type":{"title":"Type","default":"collect_output","enum":["collect_output"],"type":"string"},"collection":{"title":"Collection","description":"The collection of input items","type":"array","items":{}}},"required":["collection"]},"CropImageInvocation":{"title":"CropImageInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["crop"],"type":"string","default":"crop"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to crop"},"x":{"title":"X","type":"integer","description":"The left x coordinate of the crop rectangle","default":0},"y":{"title":"Y","type":"integer","description":"The top y coordinate of the crop rectangle","default":0},"width":{"title":"Width","exclusiveMinimum":0.0,"type":"integer","description":"The width of the crop rectangle","default":512},"height":{"title":"Height","exclusiveMinimum":0.0,"type":"integer","description":"The height of the crop rectangle","default":512}},"description":"Crops an image to a specified box. The box can be outside of the image.","output":{"$ref":"#/components/schemas/ImageOutput"}},"CvInpaintInvocation":{"title":"CvInpaintInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["cv_inpaint"],"type":"string","default":"cv_inpaint"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to inpaint"},"mask":{"title":"Mask","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The mask to use when inpainting"}},"description":"Simple inpaint using opencv.","output":{"$ref":"#/components/schemas/ImageOutput"}},"Edge":{"title":"Edge","required":["source","destination"],"type":"object","properties":{"source":{"title":"Source","allOf":[{"$ref":"#/components/schemas/EdgeConnection"}],"description":"The connection for the edge's from node and field"},"destination":{"title":"Destination","allOf":[{"$ref":"#/components/schemas/EdgeConnection"}],"description":"The connection for the edge's to node and field"}}},"EdgeConnection":{"title":"EdgeConnection","required":["node_id","field"],"type":"object","properties":{"node_id":{"title":"Node Id","type":"string","description":"The id of the node for this edge connection"},"field":{"title":"Field","type":"string","description":"The field for this connection"}}},"Graph":{"title":"Graph","type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this graph"},"nodes":{"title":"Nodes","type":"object","additionalProperties":{"oneOf":[{"$ref":"#/components/schemas/LoadImageInvocation"},{"$ref":"#/components/schemas/ShowImageInvocation"},{"$ref":"#/components/schemas/CropImageInvocation"},{"$ref":"#/components/schemas/PasteImageInvocation"},{"$ref":"#/components/schemas/MaskFromAlphaInvocation"},{"$ref":"#/components/schemas/BlurInvocation"},{"$ref":"#/components/schemas/LerpInvocation"},{"$ref":"#/components/schemas/InverseLerpInvocation"},{"$ref":"#/components/schemas/CvInpaintInvocation"},{"$ref":"#/components/schemas/UpscaleInvocation"},{"$ref":"#/components/schemas/RestoreFaceInvocation"},{"$ref":"#/components/schemas/TextToImageInvocation"},{"$ref":"#/components/schemas/GraphInvocation"},{"$ref":"#/components/schemas/IterateInvocation"},{"$ref":"#/components/schemas/CollectInvocation"},{"$ref":"#/components/schemas/ImageToImageInvocation"},{"$ref":"#/components/schemas/InpaintInvocation"}],"discriminator":{"propertyName":"type","mapping":{"load_image":"#/components/schemas/LoadImageInvocation","show_image":"#/components/schemas/ShowImageInvocation","crop":"#/components/schemas/CropImageInvocation","paste":"#/components/schemas/PasteImageInvocation","tomask":"#/components/schemas/MaskFromAlphaInvocation","blur":"#/components/schemas/BlurInvocation","lerp":"#/components/schemas/LerpInvocation","ilerp":"#/components/schemas/InverseLerpInvocation","cv_inpaint":"#/components/schemas/CvInpaintInvocation","upscale":"#/components/schemas/UpscaleInvocation","restore_face":"#/components/schemas/RestoreFaceInvocation","txt2img":"#/components/schemas/TextToImageInvocation","graph":"#/components/schemas/GraphInvocation","iterate":"#/components/schemas/IterateInvocation","collect":"#/components/schemas/CollectInvocation","img2img":"#/components/schemas/ImageToImageInvocation","inpaint":"#/components/schemas/InpaintInvocation"}}},"description":"The nodes in this graph"},"edges":{"title":"Edges","type":"array","items":{"$ref":"#/components/schemas/Edge"},"description":"The connections between nodes and their fields in this graph"}}},"GraphExecutionState":{"title":"GraphExecutionState","required":["graph"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of the execution state"},"graph":{"title":"Graph","allOf":[{"$ref":"#/components/schemas/Graph"}],"description":"The graph being executed"},"execution_graph":{"title":"Execution Graph","allOf":[{"$ref":"#/components/schemas/Graph"}],"description":"The expanded graph of activated and executed nodes"},"executed":{"title":"Executed","uniqueItems":true,"type":"array","items":{"type":"string"},"description":"The set of node ids that have been executed"},"executed_history":{"title":"Executed History","type":"array","items":{"type":"string"},"description":"The list of node ids that have been executed, in order of execution"},"results":{"title":"Results","type":"object","additionalProperties":{"oneOf":[{"$ref":"#/components/schemas/ImageOutput"},{"$ref":"#/components/schemas/MaskOutput"},{"$ref":"#/components/schemas/PromptOutput"},{"$ref":"#/components/schemas/GraphInvocationOutput"},{"$ref":"#/components/schemas/IterateInvocationOutput"},{"$ref":"#/components/schemas/CollectInvocationOutput"}],"discriminator":{"propertyName":"type","mapping":{"image":"#/components/schemas/ImageOutput","mask":"#/components/schemas/MaskOutput","prompt":"#/components/schemas/PromptOutput","graph_output":"#/components/schemas/GraphInvocationOutput","iterate_output":"#/components/schemas/IterateInvocationOutput","collect_output":"#/components/schemas/CollectInvocationOutput"}}},"description":"The results of node executions"},"errors":{"title":"Errors","type":"object","additionalProperties":{"type":"string"},"description":"Errors raised when executing nodes"},"prepared_source_mapping":{"title":"Prepared Source Mapping","type":"object","additionalProperties":{"type":"string"},"description":"The map of prepared nodes to original graph nodes"},"source_prepared_mapping":{"title":"Source Prepared Mapping","type":"object","additionalProperties":{"uniqueItems":true,"type":"array","items":{"type":"string"}},"description":"The map of original graph nodes to prepared nodes"}},"description":"Tracks the state of a graph execution"},"GraphInvocation":{"title":"GraphInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["graph"],"type":"string","default":"graph"},"graph":{"title":"Graph","allOf":[{"$ref":"#/components/schemas/Graph"}],"description":"The graph to run"}},"description":"A node to process inputs and produce outputs.\nMay use dependency injection in __init__ to receive providers.","output":{"$ref":"#/components/schemas/GraphInvocationOutput"}},"GraphInvocationOutput":{"title":"GraphInvocationOutput","description":"Base class for all invocation outputs","type":"object","properties":{"type":{"title":"Type","default":"graph_output","enum":["graph_output"],"type":"string"}}},"HTTPValidationError":{"title":"HTTPValidationError","type":"object","properties":{"detail":{"title":"Detail","type":"array","items":{"$ref":"#/components/schemas/ValidationError"}}}},"ImageField":{"title":"ImageField","description":"An image field used for passing image objects between invocations","type":"object","properties":{"image_type":{"title":"Image Type","description":"The type of the image","default":"results","type":"string"},"image_name":{"title":"Image Name","description":"The name of the image","type":"string"}}},"ImageOutput":{"title":"ImageOutput","description":"Base class for invocations that output an image","type":"object","properties":{"type":{"title":"Type","default":"image","enum":["image"],"type":"string"},"image":{"title":"Image","description":"The output image","allOf":[{"$ref":"#/components/schemas/ImageField"}]}}},"ImageToImageInvocation":{"title":"ImageToImageInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["img2img"],"type":"string","default":"img2img"},"prompt":{"title":"Prompt","type":"string","description":"The prompt to generate an image from"},"seed":{"title":"Seed","maximum":4294967295.0,"minimum":-1.0,"type":"integer","description":"The seed to use (-1 for a random seed)","default":-1},"steps":{"title":"Steps","exclusiveMinimum":0.0,"type":"integer","description":"The number of steps to use to generate the image","default":10},"width":{"title":"Width","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The width of the resulting image","default":512},"height":{"title":"Height","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The height of the resulting image","default":512},"cfg_scale":{"title":"Cfg Scale","exclusiveMinimum":0.0,"type":"number","description":"The Classifier-Free Guidance, higher values may result in a result closer to the prompt","default":7.5},"sampler_name":{"title":"Sampler Name","enum":["ddim","dpmpp_2","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_euler","k_euler_a","k_heun","k_lms","plms"],"type":"string","description":"The sampler to use","default":"k_lms"},"seamless":{"title":"Seamless","type":"boolean","description":"Whether or not to generate an image that can tile without seams","default":false},"model":{"title":"Model","type":"string","description":"The model to use (currently ignored)","default":""},"progress_images":{"title":"Progress Images","type":"boolean","description":"Whether or not to produce progress images during generation","default":false},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The input image"},"strength":{"title":"Strength","maximum":1.0,"exclusiveMinimum":0.0,"type":"number","description":"The strength of the original image","default":0.75},"fit":{"title":"Fit","type":"boolean","description":"Whether or not the result should be fit to the aspect ratio of the input image","default":true}},"description":"Generates an image using img2img.","output":{"$ref":"#/components/schemas/ImageOutput"}},"ImageType":{"title":"ImageType","enum":["results","intermediates","uploads"],"type":"string","description":"An enumeration."},"InpaintInvocation":{"title":"InpaintInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["inpaint"],"type":"string","default":"inpaint"},"prompt":{"title":"Prompt","type":"string","description":"The prompt to generate an image from"},"seed":{"title":"Seed","maximum":4294967295.0,"minimum":-1.0,"type":"integer","description":"The seed to use (-1 for a random seed)","default":-1},"steps":{"title":"Steps","exclusiveMinimum":0.0,"type":"integer","description":"The number of steps to use to generate the image","default":10},"width":{"title":"Width","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The width of the resulting image","default":512},"height":{"title":"Height","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The height of the resulting image","default":512},"cfg_scale":{"title":"Cfg Scale","exclusiveMinimum":0.0,"type":"number","description":"The Classifier-Free Guidance, higher values may result in a result closer to the prompt","default":7.5},"sampler_name":{"title":"Sampler Name","enum":["ddim","dpmpp_2","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_euler","k_euler_a","k_heun","k_lms","plms"],"type":"string","description":"The sampler to use","default":"k_lms"},"seamless":{"title":"Seamless","type":"boolean","description":"Whether or not to generate an image that can tile without seams","default":false},"model":{"title":"Model","type":"string","description":"The model to use (currently ignored)","default":""},"progress_images":{"title":"Progress Images","type":"boolean","description":"Whether or not to produce progress images during generation","default":false},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The input image"},"strength":{"title":"Strength","maximum":1.0,"exclusiveMinimum":0.0,"type":"number","description":"The strength of the original image","default":0.75},"fit":{"title":"Fit","type":"boolean","description":"Whether or not the result should be fit to the aspect ratio of the input image","default":true},"mask":{"title":"Mask","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The mask"},"inpaint_replace":{"title":"Inpaint Replace","maximum":1.0,"minimum":0.0,"type":"number","description":"The amount by which to replace masked areas with latent noise","default":0.0}},"description":"Generates an image using inpaint.","output":{"$ref":"#/components/schemas/ImageOutput"}},"InverseLerpInvocation":{"title":"InverseLerpInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["ilerp"],"type":"string","default":"ilerp"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to lerp"},"min":{"title":"Min","maximum":255.0,"minimum":0.0,"type":"integer","description":"The minimum input value","default":0},"max":{"title":"Max","maximum":255.0,"minimum":0.0,"type":"integer","description":"The maximum input value","default":255}},"description":"Inverse linear interpolation of all pixels of an image","output":{"$ref":"#/components/schemas/ImageOutput"}},"IterateInvocation":{"title":"IterateInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["iterate"],"type":"string","default":"iterate"},"collection":{"title":"Collection","type":"array","items":{},"description":"The list of items to iterate over"},"index":{"title":"Index","type":"integer","description":"The index, will be provided on executed iterators","default":0}},"description":"A node to process inputs and produce outputs.\nMay use dependency injection in __init__ to receive providers.","output":{"$ref":"#/components/schemas/IterateInvocationOutput"}},"IterateInvocationOutput":{"title":"IterateInvocationOutput","description":"Used to connect iteration outputs. Will be expanded to a specific output.","type":"object","properties":{"type":{"title":"Type","default":"iterate_output","enum":["iterate_output"],"type":"string"},"item":{"title":"Item","description":"The item being iterated over"}}},"LerpInvocation":{"title":"LerpInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["lerp"],"type":"string","default":"lerp"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to lerp"},"min":{"title":"Min","maximum":255.0,"minimum":0.0,"type":"integer","description":"The minimum output value","default":0},"max":{"title":"Max","maximum":255.0,"minimum":0.0,"type":"integer","description":"The maximum output value","default":255}},"description":"Linear interpolation of all pixels of an image","output":{"$ref":"#/components/schemas/ImageOutput"}},"LoadImageInvocation":{"title":"LoadImageInvocation","required":["id","image_type","image_name"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["load_image"],"type":"string","default":"load_image"},"image_type":{"allOf":[{"$ref":"#/components/schemas/ImageType"}],"description":"The type of the image"},"image_name":{"title":"Image Name","type":"string","description":"The name of the image"}},"description":"Load an image from a filename and provide it as output.","output":{"$ref":"#/components/schemas/ImageOutput"}},"MaskFromAlphaInvocation":{"title":"MaskFromAlphaInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["tomask"],"type":"string","default":"tomask"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to create the mask from"},"invert":{"title":"Invert","type":"boolean","description":"Whether or not to invert the mask","default":false}},"description":"Extracts the alpha channel of an image as a mask.","output":{"$ref":"#/components/schemas/MaskOutput"}},"MaskOutput":{"title":"MaskOutput","description":"Base class for invocations that output a mask","type":"object","properties":{"type":{"title":"Type","default":"mask","enum":["mask"],"type":"string"},"mask":{"title":"Mask","description":"The output mask","allOf":[{"$ref":"#/components/schemas/ImageField"}]}}},"PaginatedResults_GraphExecutionState_":{"title":"PaginatedResults[GraphExecutionState]","required":["items","page","pages","per_page","total"],"type":"object","properties":{"items":{"title":"Items","type":"array","items":{"$ref":"#/components/schemas/GraphExecutionState"},"description":"Items"},"page":{"title":"Page","type":"integer","description":"Current Page"},"pages":{"title":"Pages","type":"integer","description":"Total number of pages"},"per_page":{"title":"Per Page","type":"integer","description":"Number of items per page"},"total":{"title":"Total","type":"integer","description":"Total number of items in result"}},"description":"Paginated results"},"PasteImageInvocation":{"title":"PasteImageInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["paste"],"type":"string","default":"paste"},"base_image":{"title":"Base Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The base image"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to paste"},"mask":{"title":"Mask","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The mask to use when pasting"},"x":{"title":"X","type":"integer","description":"The left x coordinate at which to paste the image","default":0},"y":{"title":"Y","type":"integer","description":"The top y coordinate at which to paste the image","default":0}},"description":"Pastes an image into another image.","output":{"$ref":"#/components/schemas/ImageOutput"}},"PromptOutput":{"title":"PromptOutput","type":"object","properties":{"type":{"title":"Type","enum":["prompt"],"type":"string","default":"prompt"},"prompt":{"title":"Prompt","type":"string","description":"The output prompt"}},"description":"Base class for invocations that output a prompt"},"RestoreFaceInvocation":{"title":"RestoreFaceInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["restore_face"],"type":"string","default":"restore_face"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The input image"},"strength":{"title":"Strength","maximum":1.0,"exclusiveMinimum":0.0,"type":"number","description":"The strength of the restoration","default":0.75}},"description":"Restores faces in an image.","output":{"$ref":"#/components/schemas/ImageOutput"}},"ShowImageInvocation":{"title":"ShowImageInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["show_image"],"type":"string","default":"show_image"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The image to show"}},"description":"Displays a provided image, and passes it forward in the pipeline.","output":{"$ref":"#/components/schemas/ImageOutput"}},"TextToImageInvocation":{"title":"TextToImageInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["txt2img"],"type":"string","default":"txt2img"},"prompt":{"title":"Prompt","type":"string","description":"The prompt to generate an image from"},"seed":{"title":"Seed","maximum":4294967295.0,"minimum":-1.0,"type":"integer","description":"The seed to use (-1 for a random seed)","default":-1},"steps":{"title":"Steps","exclusiveMinimum":0.0,"type":"integer","description":"The number of steps to use to generate the image","default":10},"width":{"title":"Width","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The width of the resulting image","default":512},"height":{"title":"Height","multipleOf":64.0,"exclusiveMinimum":0.0,"type":"integer","description":"The height of the resulting image","default":512},"cfg_scale":{"title":"Cfg Scale","exclusiveMinimum":0.0,"type":"number","description":"The Classifier-Free Guidance, higher values may result in a result closer to the prompt","default":7.5},"sampler_name":{"title":"Sampler Name","enum":["ddim","dpmpp_2","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_euler","k_euler_a","k_heun","k_lms","plms"],"type":"string","description":"The sampler to use","default":"k_lms"},"seamless":{"title":"Seamless","type":"boolean","description":"Whether or not to generate an image that can tile without seams","default":false},"model":{"title":"Model","type":"string","description":"The model to use (currently ignored)","default":""},"progress_images":{"title":"Progress Images","type":"boolean","description":"Whether or not to produce progress images during generation","default":false}},"description":"Generates an image using text2img.","output":{"$ref":"#/components/schemas/ImageOutput"}},"UpscaleInvocation":{"title":"UpscaleInvocation","required":["id"],"type":"object","properties":{"id":{"title":"Id","type":"string","description":"The id of this node. Must be unique among all nodes."},"type":{"title":"Type","enum":["upscale"],"type":"string","default":"upscale"},"image":{"title":"Image","allOf":[{"$ref":"#/components/schemas/ImageField"}],"description":"The input image"},"strength":{"title":"Strength","maximum":1.0,"exclusiveMinimum":0.0,"type":"number","description":"The strength","default":0.75},"level":{"title":"Level","enum":[2,4],"type":"integer","description":"The upscale level","default":2}},"description":"Upscales an image.","output":{"$ref":"#/components/schemas/ImageOutput"}},"ValidationError":{"title":"ValidationError","required":["loc","msg","type"],"type":"object","properties":{"loc":{"title":"Location","type":"array","items":{"anyOf":[{"type":"string"},{"type":"integer"}]}},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}}}}}} \ No newline at end of file