{
    "openapi": "3.1.2",
    "info": {
        "title": "Board Room",
        "version": "0.0.1"
    },
    "servers": [
        {
            "url": "https:\/\/api.boardroom.andrewdellimore.com\/api"
        }
    ],
    "paths": {
        "\/action-items": {
            "get": {
                "operationId": "action-items.index",
                "summary": "List action items, newest first. `status` is `open` or `done`",
                "tags": [
                    "ActionItem"
                ],
                "parameters": [
                    {
                        "name": "status",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "enum": [
                                "open",
                                "done",
                                null
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `ActionItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/ActionItemData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/action-items\/{actionItem}\/complete": {
            "post": {
                "operationId": "action-items.complete",
                "summary": "Mark an open action item as done",
                "tags": [
                    "ActionItem"
                ],
                "parameters": [
                    {
                        "name": "actionItem",
                        "in": "path",
                        "required": true,
                        "description": "The action item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ActionItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "This action item is already done."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/action-items\/{actionItem}\/run": {
            "post": {
                "operationId": "action-items.run",
                "summary": "Have the assigned agent carry out an open task. The run is queued; poll the item for its report or approvals",
                "tags": [
                    "ActionItem"
                ],
                "parameters": [
                    {
                        "name": "actionItem",
                        "in": "path",
                        "required": true,
                        "description": "The action item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "202": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ActionItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error\n\nAn error\n\nAn error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "description": "Error overview.",
                                                    "examples": [
                                                        "This action item is the user's, not an agent's."
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "description": "Error overview.",
                                                    "examples": [
                                                        "This action item is already done."
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "description": "Error overview.",
                                                    "examples": [
                                                        "This action item has already run."
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/action-items\/{actionItem}\/approvals": {
            "get": {
                "operationId": "action-items.approvals.index",
                "summary": "The tool calls the item's paused run is waiting on, with the arguments the agent wants to use",
                "tags": [
                    "ActionItem"
                ],
                "parameters": [
                    {
                        "name": "actionItem",
                        "in": "path",
                        "required": true,
                        "description": "The action item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "id": {
                                                        "type": "string"
                                                    },
                                                    "tool": {
                                                        "type": "string"
                                                    },
                                                    "arguments": {
                                                        "type": "object",
                                                        "additionalProperties": {}
                                                    },
                                                    "reason": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    }
                                                },
                                                "required": [
                                                    "id",
                                                    "tool",
                                                    "arguments",
                                                    "reason"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "action-items.approvals.store",
                "summary": "Approve, reject (with a reason the agent sees) or edit (replacing all its arguments) every pending tool call,\nthen resume the run",
                "tags": [
                    "ActionItem"
                ],
                "parameters": [
                    {
                        "name": "actionItem",
                        "in": "path",
                        "required": true,
                        "description": "The action item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "decisions": {
                                        "type": "array",
                                        "description": "One decision per pending tool call.",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "id": {
                                                    "type": "string",
                                                    "description": "The pending tool call's id."
                                                },
                                                "action": {
                                                    "type": "string",
                                                    "enum": [
                                                        "approve",
                                                        "reject",
                                                        "edit"
                                                    ]
                                                },
                                                "reason": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "maxLength": 1000
                                                },
                                                "arguments": {
                                                    "type": "object",
                                                    "additionalProperties": {}
                                                }
                                            },
                                            "required": [
                                                "id",
                                                "action"
                                            ],
                                            "additionalProperties": {}
                                        }
                                    }
                                },
                                "required": [
                                    "decisions"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "202": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ActionItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "This action item is not waiting on an approval."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meetings\/{meeting}\/agenda-items": {
            "post": {
                "operationId": "meetings.agenda-items.store",
                "summary": "Add an agenda item",
                "tags": [
                    "AgendaItem"
                ],
                "parameters": [
                    {
                        "name": "meeting",
                        "in": "path",
                        "required": true,
                        "description": "The meeting ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "body": {
                                        "type": "string",
                                        "maxLength": 2000
                                    }
                                },
                                "required": [
                                    "body"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`AgendaItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgendaItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "The agenda is locked once the meeting has started."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meetings\/{meeting}\/agenda-items\/{agendaItem}": {
            "delete": {
                "operationId": "meetings.agenda-items.destroy",
                "summary": "Remove an agenda item",
                "tags": [
                    "AgendaItem"
                ],
                "parameters": [
                    {
                        "name": "meeting",
                        "in": "path",
                        "required": true,
                        "description": "The meeting ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agendaItem",
                        "in": "path",
                        "required": true,
                        "description": "The agenda item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "The agenda is locked once the meeting has started."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agent-tools": {
            "get": {
                "operationId": "agent-tools.index",
                "summary": "The tools an agent can be given, with what each does",
                "tags": [
                    "Agent"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "key": {
                                                        "type": "string"
                                                    },
                                                    "description": {
                                                        "type": "string"
                                                    }
                                                },
                                                "required": [
                                                    "key",
                                                    "description"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agents\/{agent}\/prompt-versions": {
            "get": {
                "operationId": "agents.prompt-versions.index",
                "summary": "List an agent's prompt versions, newest first",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `AgentPromptVersionData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/AgentPromptVersionData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "agents.prompt-versions.store",
                "summary": "Revise an agent: add the next prompt version and make it active",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "brief": {
                                        "type": "string",
                                        "maxLength": 20000
                                    },
                                    "provider": {
                                        "type": "string",
                                        "enum": [
                                            "anthropic",
                                            "azure",
                                            "bedrock",
                                            "cohere",
                                            "deepseek",
                                            "eleven",
                                            "gemini",
                                            "groq",
                                            "jina",
                                            "mistral",
                                            "ollama",
                                            "openai",
                                            "openai-compatible",
                                            "openrouter",
                                            "typesafe",
                                            "voyageai",
                                            "xai"
                                        ]
                                    },
                                    "model": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "temperature": {
                                        "type": [
                                            "number",
                                            "null"
                                        ],
                                        "minimum": 0,
                                        "maximum": 2
                                    }
                                },
                                "required": [
                                    "brief",
                                    "provider",
                                    "model"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`AgentPromptVersionData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentPromptVersionData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agents\/{agent}\/tools": {
            "put": {
                "operationId": "agents.tools.update",
                "summary": "Replace an agent's tools. An empty list removes them all",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "tools": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "enum": [
                                                "store_metrics",
                                                "product_copy",
                                                "update_product_copy"
                                            ]
                                        },
                                        "uniqueItems": true
                                    }
                                },
                                "required": [
                                    "tools"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`AgentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agents": {
            "get": {
                "operationId": "agents.index",
                "summary": "List agents in hiring order with their active prompt version and tools. `with_fired` includes fired agents",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "with_fired",
                        "in": "query",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `AgentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/AgentData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "agents.store",
                "summary": "Hire an agent: its first prompt version and tools are created with it. `autonomy_tier` defaults to 1 (draft\nonly)",
                "tags": [
                    "Agent"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "role": {
                                        "$ref": "#\/components\/schemas\/AgentRole"
                                    },
                                    "autonomy_tier": {
                                        "type": "integer",
                                        "minimum": 1,
                                        "maximum": 3
                                    },
                                    "brief": {
                                        "type": "string",
                                        "maxLength": 20000
                                    },
                                    "provider": {
                                        "type": "string",
                                        "enum": [
                                            "anthropic",
                                            "azure",
                                            "bedrock",
                                            "cohere",
                                            "deepseek",
                                            "eleven",
                                            "gemini",
                                            "groq",
                                            "jina",
                                            "mistral",
                                            "ollama",
                                            "openai",
                                            "openai-compatible",
                                            "openrouter",
                                            "typesafe",
                                            "voyageai",
                                            "xai"
                                        ]
                                    },
                                    "model": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "temperature": {
                                        "type": [
                                            "number",
                                            "null"
                                        ],
                                        "minimum": 0,
                                        "maximum": 2
                                    },
                                    "tools": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "enum": [
                                                "store_metrics",
                                                "product_copy",
                                                "update_product_copy"
                                            ]
                                        },
                                        "uniqueItems": true
                                    }
                                },
                                "required": [
                                    "name",
                                    "role",
                                    "brief",
                                    "provider",
                                    "model"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`AgentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agents\/{agent}": {
            "get": {
                "operationId": "agents.show",
                "summary": "Show an agent's profile: active prompt version, tools and scorecard. Fired agents can still be shown",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`AgentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "agents.update",
                "summary": "Rename an agent or change its autonomy tier. The role is fixed: a different role is a different hire",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "autonomy_tier": {
                                        "type": "integer",
                                        "minimum": 1,
                                        "maximum": 3
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`AgentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "agents.destroy",
                "summary": "Fire an agent. Its history stays. The last CEO cannot be fired, because meetings need one to decide",
                "tags": [
                    "Agent"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "The board needs a CEO; hire another before firing this one."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/ai-spend": {
            "get": {
                "operationId": "ai-spend.show",
                "summary": "Show spend against the limits, with the last 30 days of usage by day and by agent. `agent_id` narrows `days` to\none agent's calls; the spend and limit totals stay app-wide, since the limits are",
                "tags": [
                    "AiSpend"
                ],
                "parameters": [
                    {
                        "name": "agent_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`AiSpendData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AiSpendData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "ai-spend.update",
                "summary": "Set the daily and weekly limits in USD. Send null to remove a limit; an omitted limit keeps its value",
                "tags": [
                    "AiSpend"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "daily_limit": {
                                        "type": [
                                            "number",
                                            "null"
                                        ],
                                        "minimum": 0,
                                        "maximum": 100000
                                    },
                                    "weekly_limit": {
                                        "type": [
                                            "number",
                                            "null"
                                        ],
                                        "minimum": 0,
                                        "maximum": 100000
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`AiSpendData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AiSpendData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/agents\/{agent}\/spend": {
            "get": {
                "operationId": "agents.spend.show",
                "summary": "Show one agent's spend for its profile: today, this week, and the last 30 days in total and by day. Fired agents\nkeep their spend",
                "tags": [
                    "AiSpend"
                ],
                "parameters": [
                    {
                        "name": "agent",
                        "in": "path",
                        "required": true,
                        "description": "The agent ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`AgentSpendData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/AgentSpendData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/login": {
            "post": {
                "operationId": "auth.login",
                "summary": "Exchange credentials for an API token",
                "tags": [
                    "Auth"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/LoginRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "token": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "token"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/logout": {
            "post": {
                "operationId": "auth.logout",
                "summary": "Revoke the current API token",
                "tags": [
                    "Auth"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/user": {
            "get": {
                "operationId": "auth.user",
                "summary": "Get the authenticated user",
                "tags": [
                    "Auth"
                ],
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/user\/password": {
            "put": {
                "operationId": "auth.updatePassword",
                "summary": "Change the authenticated user's password, revoking their other tokens",
                "tags": [
                    "Auth"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/UpdatePasswordRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/collections": {
            "get": {
                "operationId": "collections.index",
                "summary": "List collections with their product counts",
                "tags": [
                    "Collection"
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `CollectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/CollectionResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/collections\/{collection}": {
            "get": {
                "operationId": "collections.show",
                "summary": "Show a collection with its products",
                "tags": [
                    "Collection"
                ],
                "parameters": [
                    {
                        "name": "collection",
                        "in": "path",
                        "required": true,
                        "description": "The collection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CollectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#\/components\/schemas\/CollectionResource"
                                                },
                                                {
                                                    "type": "object",
                                                    "required": [
                                                        "products"
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/connections\/available": {
            "get": {
                "operationId": "connection.available",
                "summary": "List the available connectors with their credential fields and actions,\nso the UI can render the right form for each",
                "tags": [
                    "Connection"
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ConnectorResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/ConnectorResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/connections\/{connection}\/test": {
            "post": {
                "operationId": "connection.test",
                "summary": "Verify the connection against the external system and record the result",
                "tags": [
                    "Connection"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "successful": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "connection": {
                                            "$ref": "#\/components\/schemas\/ConnectionResource"
                                        }
                                    },
                                    "required": [
                                        "successful",
                                        "message",
                                        "connection"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "description": "The check or action failed, or the connector is no longer available.",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "successful": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string"
                                                },
                                                "connection": {
                                                    "$ref": "#\/components\/schemas\/ConnectionResource"
                                                }
                                            },
                                            "required": [
                                                "successful",
                                                "message",
                                                "connection"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "\/connections\/{connection}\/actions\/{action}": {
            "post": {
                "operationId": "connection.action",
                "summary": "Run a connector-declared action (e.g. a manual import)",
                "tags": [
                    "Connection"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "action",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "successful": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "connection": {
                                            "$ref": "#\/components\/schemas\/ConnectionResource"
                                        }
                                    },
                                    "required": [
                                        "successful",
                                        "message",
                                        "connection"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "description": "The check or action failed, or the connector is no longer available.",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "successful": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string"
                                                },
                                                "connection": {
                                                    "$ref": "#\/components\/schemas\/ConnectionResource"
                                                }
                                            },
                                            "required": [
                                                "successful",
                                                "message",
                                                "connection"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "\/connections": {
            "get": {
                "operationId": "connections.index",
                "summary": "List configured connections. Secrets are never returned",
                "tags": [
                    "Connection"
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ConnectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/ConnectionResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "connections.store",
                "summary": "Create a connection. Fields the connector does not declare are ignored; secret\nfields go to the encrypted credentials, the rest to config",
                "tags": [
                    "Connection"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/StoreConnectionRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`ConnectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ConnectionResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/connections\/{connection}": {
            "get": {
                "operationId": "connections.show",
                "tags": [
                    "Connection"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ConnectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ConnectionResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "connections.update",
                "summary": "Update a connection. Submitted credentials are merged over the stored ones and\nblank values are ignored, so a partial update never wipes a saved secret",
                "tags": [
                    "Connection"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/UpdateConnectionRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ConnectionResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ConnectionResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "connections.destroy",
                "tags": [
                    "Connection"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "const": "Connection deleted."
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/customers": {
            "get": {
                "operationId": "customers.index",
                "summary": "List customers, newest first, with their order count. `search` matches the name or email",
                "tags": [
                    "Customer"
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `CustomerData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/CustomerData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/customers\/{customer}": {
            "get": {
                "operationId": "customers.show",
                "summary": "Show a customer with their addresses and order count",
                "tags": [
                    "Customer"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CustomerData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/CustomerData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/datatable\/{resource}": {
            "get": {
                "operationId": "datatable.index",
                "summary": "Page of rows, column definitions and (with `include_filters`) filter options for a datatable",
                "tags": [
                    "Datatable"
                ],
                "parameters": [
                    {
                        "name": "resource",
                        "in": "path",
                        "required": true,
                        "description": "The datatable: `ai-usage`, `customer`, `order`, `product`, `purchase-order` or `vendor`.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "search_term",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ],
                            "minimum": 1
                        }
                    },
                    {
                        "name": "page_size",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ],
                            "minimum": 1,
                            "maximum": 100
                        }
                    },
                    {
                        "name": "sort[key]",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "sort[direction]",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "enum": [
                                "asc",
                                "desc",
                                null
                            ]
                        }
                    },
                    {
                        "name": "include_filters",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "filters",
                        "in": "query",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "object",
                                "properties": {
                                    "key": {
                                        "type": "string"
                                    },
                                    "value": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "required": [
                                    "key"
                                ]
                            }
                        },
                        "x-deepObject-style": "qs"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "total": {
                                            "type": "integer"
                                        },
                                        "rows": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "additionalProperties": {}
                                            }
                                        },
                                        "columns": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "key": {
                                                        "type": "string"
                                                    },
                                                    "text": {
                                                        "type": "string"
                                                    },
                                                    "db_key": {
                                                        "type": "string"
                                                    },
                                                    "sort": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "key",
                                                    "text"
                                                ]
                                            }
                                        },
                                        "filter_options": {
                                            "type": "object",
                                            "additionalProperties": {
                                                "type": "array",
                                                "items": {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": [
                                                                "string",
                                                                "integer"
                                                            ]
                                                        },
                                                        "text": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "text"
                                                    ]
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "total",
                                        "rows",
                                        "columns",
                                        "filter_options"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "404": {
                        "description": "There is no datatable with this name.",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "\/experiments": {
            "get": {
                "operationId": "experiments.index",
                "summary": "List experiments, newest first. `status` filters by a stored status, or `awaiting_review` for running\nexperiments whose review date has passed. `agent_id` filters by the proposing agent",
                "tags": [
                    "Experiment"
                ],
                "parameters": [
                    {
                        "name": "status",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "enum": [
                                "draft",
                                "approved",
                                "running",
                                "won",
                                "lost",
                                "inconclusive",
                                "vetoed",
                                "awaiting_review",
                                null
                            ]
                        }
                    },
                    {
                        "name": "agent_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `ExperimentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/ExperimentData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/experiments\/{experiment}": {
            "get": {
                "operationId": "experiments.show",
                "summary": "Show an experiment with the critiques it drew",
                "tags": [
                    "Experiment"
                ],
                "parameters": [
                    {
                        "name": "experiment",
                        "in": "path",
                        "required": true,
                        "description": "The experiment ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ExperimentData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ExperimentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/experiments\/{experiment}\/decision": {
            "post": {
                "operationId": "experiments.decide",
                "summary": "Approve or veto an experiment yourself, overriding the CEO. Only before it goes live. Vetoing completes the\naction items that asked for it to be put live",
                "tags": [
                    "Experiment"
                ],
                "parameters": [
                    {
                        "name": "experiment",
                        "in": "path",
                        "required": true,
                        "description": "The experiment ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "status": {
                                        "type": "string",
                                        "enum": [
                                            "approved",
                                            "vetoed"
                                        ]
                                    },
                                    "rationale": {
                                        "type": "string",
                                        "maxLength": 1000
                                    }
                                },
                                "required": [
                                    "status",
                                    "rationale"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ExperimentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Only an experiment that has not started can be decided."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/experiments\/{experiment}\/start": {
            "post": {
                "operationId": "experiments.start",
                "summary": "Mark an approved experiment as live: the baseline is re-measured up to now and the review clock starts",
                "tags": [
                    "Experiment"
                ],
                "parameters": [
                    {
                        "name": "experiment",
                        "in": "path",
                        "required": true,
                        "description": "The experiment ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ExperimentData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Only an approved experiment can be started."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meetings\/{meeting}\/start": {
            "post": {
                "operationId": "meetings.start",
                "summary": "Queue a draft meeting to run, or resume a failed one from the step it stopped at",
                "tags": [
                    "Meeting"
                ],
                "parameters": [
                    {
                        "name": "meeting",
                        "in": "path",
                        "required": true,
                        "description": "The meeting ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "202": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Only a draft or failed meeting can be started."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meetings": {
            "get": {
                "operationId": "meetings.index",
                "summary": "List meetings, newest first",
                "tags": [
                    "Meeting"
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `MeetingData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/MeetingData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "meetings.store",
                "summary": "Create a draft meeting, optionally with its first agenda items. `type` defaults to `board`; `start: true`\nqueues it straight away instead of leaving the agenda open",
                "tags": [
                    "Meeting"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "type": {
                                        "$ref": "#\/components\/schemas\/MeetingType"
                                    },
                                    "agenda": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "maxLength": 2000
                                        },
                                        "maxItems": 20
                                    },
                                    "start": {
                                        "type": "boolean"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`MeetingData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meetings\/{meeting}": {
            "get": {
                "operationId": "meetings.show",
                "summary": "Show the minutes: agenda, brief, closed experiments, proposals with critiques and the CEO's decisions, summary, takeaways,\naction items and the transcript",
                "tags": [
                    "Meeting"
                ],
                "parameters": [
                    {
                        "name": "meeting",
                        "in": "path",
                        "required": true,
                        "description": "The meeting ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`MeetingData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meeting-schedules\/{meetingSchedule}\/run": {
            "post": {
                "operationId": "meeting-schedules.run",
                "summary": "Start the schedule's meeting now, without changing its next run",
                "tags": [
                    "MeetingSchedule"
                ],
                "parameters": [
                    {
                        "name": "meetingSchedule",
                        "in": "path",
                        "required": true,
                        "description": "The meeting schedule ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "202": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "This schedule's last meeting has not finished."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meeting-schedules": {
            "get": {
                "operationId": "meeting-schedules.index",
                "summary": "List schedules by name",
                "tags": [
                    "MeetingSchedule"
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `MeetingScheduleData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/MeetingScheduleData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "meeting-schedules.store",
                "summary": "Create a schedule. Its first run is the next time the cron matches",
                "tags": [
                    "MeetingSchedule"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "type": {
                                        "$ref": "#\/components\/schemas\/MeetingType"
                                    },
                                    "cron": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "timezone": {
                                        "type": "string"
                                    },
                                    "agenda": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "maxLength": 2000
                                        },
                                        "maxItems": 20
                                    },
                                    "is_active": {
                                        "type": "boolean"
                                    }
                                },
                                "required": [
                                    "name",
                                    "type",
                                    "cron",
                                    "timezone"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`MeetingScheduleData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingScheduleData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/meeting-schedules\/{meetingSchedule}": {
            "get": {
                "operationId": "meeting-schedules.show",
                "summary": "Show a schedule",
                "tags": [
                    "MeetingSchedule"
                ],
                "parameters": [
                    {
                        "name": "meetingSchedule",
                        "in": "path",
                        "required": true,
                        "description": "The meeting schedule ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`MeetingScheduleData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingScheduleData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "meeting-schedules.update",
                "summary": "Update a schedule; omitted fields keep their values. Pause or resume it with `is_active`. Changing the cron\nor timezone, or resuming, moves the next run to the next match from now",
                "tags": [
                    "MeetingSchedule"
                ],
                "parameters": [
                    {
                        "name": "meetingSchedule",
                        "in": "path",
                        "required": true,
                        "description": "The meeting schedule ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "type": {
                                        "$ref": "#\/components\/schemas\/MeetingType"
                                    },
                                    "cron": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "timezone": {
                                        "type": "string"
                                    },
                                    "agenda": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "maxLength": 2000
                                        },
                                        "maxItems": 20
                                    },
                                    "is_active": {
                                        "type": "boolean"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`MeetingScheduleData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/MeetingScheduleData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "meeting-schedules.destroy",
                "summary": "Delete a schedule. Its past meetings are kept",
                "tags": [
                    "MeetingSchedule"
                ],
                "parameters": [
                    {
                        "name": "meetingSchedule",
                        "in": "path",
                        "required": true,
                        "description": "The meeting schedule ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/orders": {
            "get": {
                "operationId": "orders.index",
                "summary": "List orders, most recently placed first. `search` matches the order number or email;\n`connection_id` keeps orders imported from that connection; `customer_id` keeps that customer's orders",
                "tags": [
                    "Order"
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    },
                    {
                        "name": "payment_status",
                        "in": "query",
                        "schema": {
                            "anyOf": [
                                {
                                    "$ref": "#\/components\/schemas\/OrderPaymentStatus"
                                },
                                {
                                    "type": "null"
                                }
                            ]
                        }
                    },
                    {
                        "name": "fulfillment_status",
                        "in": "query",
                        "schema": {
                            "anyOf": [
                                {
                                    "$ref": "#\/components\/schemas\/OrderFulfillmentStatus"
                                },
                                {
                                    "type": "null"
                                }
                            ]
                        }
                    },
                    {
                        "name": "connection_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `OrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/OrderData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "orders.store",
                "summary": "Create an order. Item and order totals are computed from prices; `placed_at`\ndefaults to now",
                "tags": [
                    "Order"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "currency": {
                                        "type": "string"
                                    },
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "title": {
                                                    "type": "string"
                                                },
                                                "quantity": {
                                                    "type": "integer"
                                                },
                                                "unit_price": {
                                                    "type": "number"
                                                },
                                                "discount_total": {
                                                    "type": "number"
                                                },
                                                "tax_total": {
                                                    "type": "number"
                                                },
                                                "product_variant_id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_title": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "external_id": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_external_id": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": [
                                                        "number",
                                                        "null"
                                                    ]
                                                },
                                                "id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "title",
                                                "quantity",
                                                "unit_price"
                                            ]
                                        }
                                    },
                                    "customer_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "order_number": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "phone": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "payment_status": {
                                        "$ref": "#\/components\/schemas\/OrderPaymentStatus"
                                    },
                                    "fulfillment_status": {
                                        "$ref": "#\/components\/schemas\/OrderFulfillmentStatus"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "shipping_total": {
                                        "type": "number"
                                    },
                                    "placed_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "cancelled_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "billing_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "shipping_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "customer": {
                                        "type": "object",
                                        "properties": {
                                            "external_id": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "first_name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "last_name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "email": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "external_updated_at": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "format": "date-time"
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            },
                                            "created_at": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "format": "date-time"
                                            },
                                            "addresses": {
                                                "anyOf": [
                                                    {
                                                        "type": "object"
                                                    },
                                                    {
                                                        "type": "array",
                                                        "items": {
                                                            "$ref": "#\/components\/schemas\/AddressData"
                                                        }
                                                    },
                                                    {
                                                        "type": "null"
                                                    }
                                                ]
                                            },
                                            "orders_count": {
                                                "type": [
                                                    "object",
                                                    "integer"
                                                ]
                                            }
                                        }
                                    },
                                    "subtotal": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "tax_total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "external_updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "connection_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                },
                                "required": [
                                    "currency",
                                    "items"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`OrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/orders\/{order}": {
            "get": {
                "operationId": "orders.show",
                "summary": "Show an order with its items, customer and addresses",
                "tags": [
                    "Order"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`OrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "orders.update",
                "summary": "Update an order created over the API. Omitted fields keep their values. Sending `items`\nreplaces the item list: items with an `id` are edited, the rest created, and the\norder's other items deleted. Totals are recomputed",
                "tags": [
                    "Order"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "currency": {
                                        "type": "string"
                                    },
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "title": {
                                                    "type": "string"
                                                },
                                                "quantity": {
                                                    "type": "integer"
                                                },
                                                "unit_price": {
                                                    "type": "number"
                                                },
                                                "discount_total": {
                                                    "type": "number"
                                                },
                                                "tax_total": {
                                                    "type": "number"
                                                },
                                                "product_variant_id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_title": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "external_id": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_external_id": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": [
                                                        "number",
                                                        "null"
                                                    ]
                                                },
                                                "id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "title",
                                                "quantity",
                                                "unit_price"
                                            ]
                                        }
                                    },
                                    "customer_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "order_number": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "phone": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "payment_status": {
                                        "$ref": "#\/components\/schemas\/OrderPaymentStatus"
                                    },
                                    "fulfillment_status": {
                                        "$ref": "#\/components\/schemas\/OrderFulfillmentStatus"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "shipping_total": {
                                        "type": "number"
                                    },
                                    "placed_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "cancelled_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "billing_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "shipping_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "customer": {
                                        "type": "object",
                                        "properties": {
                                            "external_id": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "first_name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "last_name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "email": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "external_updated_at": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "format": "date-time"
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            },
                                            "created_at": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "format": "date-time"
                                            },
                                            "addresses": {
                                                "anyOf": [
                                                    {
                                                        "type": "object"
                                                    },
                                                    {
                                                        "type": "array",
                                                        "items": {
                                                            "$ref": "#\/components\/schemas\/AddressData"
                                                        }
                                                    },
                                                    {
                                                        "type": "null"
                                                    }
                                                ]
                                            },
                                            "orders_count": {
                                                "type": [
                                                    "object",
                                                    "integer"
                                                ]
                                            }
                                        }
                                    },
                                    "subtotal": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "tax_total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "external_updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "connection_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`OrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Orders imported from a connection are managed by their channel."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "orders.destroy",
                "summary": "Delete an order created over the API, with its items and address snapshots",
                "tags": [
                    "Order"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Orders imported from a connection are managed by their channel."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/orders\/{order}\/products": {
            "get": {
                "operationId": "orders.products.index",
                "summary": "List the order's lines",
                "tags": [
                    "OrderProduct"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`OrderProductData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/OrderProductData"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "orders.products.store",
                "summary": "Add a line to the order. Its `total` is computed from its prices",
                "tags": [
                    "OrderProduct"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "title": {
                                        "type": "string"
                                    },
                                    "quantity": {
                                        "type": "integer"
                                    },
                                    "unit_price": {
                                        "type": "number"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "tax_total": {
                                        "type": "number"
                                    },
                                    "product_variant_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_title": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                },
                                "required": [
                                    "title",
                                    "quantity",
                                    "unit_price"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`OrderProductData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderProductData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Orders imported from a connection are managed by their channel."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/orders\/{order}\/products\/{item}": {
            "get": {
                "operationId": "orders.products.show",
                "summary": "Show one line of the order",
                "tags": [
                    "OrderProduct"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`OrderProductData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderProductData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "orders.products.update",
                "summary": "Update a line. Omitted fields keep their values; the line and order totals are recomputed",
                "tags": [
                    "OrderProduct"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "title": {
                                        "type": "string"
                                    },
                                    "quantity": {
                                        "type": "integer"
                                    },
                                    "unit_price": {
                                        "type": "number"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "tax_total": {
                                        "type": "number"
                                    },
                                    "product_variant_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_title": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_external_id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`OrderProductData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/OrderProductData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Orders imported from a connection are managed by their channel."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "orders.products.destroy",
                "summary": "Remove a line and recompute the order totals. An order keeps at least one line",
                "tags": [
                    "OrderProduct"
                ],
                "parameters": [
                    {
                        "name": "order",
                        "in": "path",
                        "required": true,
                        "description": "The order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "409": {
                        "description": "An error",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "description": "Error overview.",
                                            "examples": [
                                                "Orders imported from a connection are managed by their channel."
                                            ]
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/products": {
            "get": {
                "operationId": "products.index",
                "summary": "List canonical products, newest first, with their variants. `search` matches the\ntitle or any variant SKU; `connection_id` keeps products listed on that connection",
                "tags": [
                    "Product"
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    },
                    {
                        "name": "status",
                        "in": "query",
                        "schema": {
                            "anyOf": [
                                {
                                    "$ref": "#\/components\/schemas\/ProductStatus"
                                },
                                {
                                    "type": "null"
                                }
                            ]
                        }
                    },
                    {
                        "name": "connection_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `ProductResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "allOf": [
                                                    {
                                                        "$ref": "#\/components\/schemas\/ProductResource"
                                                    },
                                                    {
                                                        "type": "object",
                                                        "required": [
                                                            "variants"
                                                        ]
                                                    }
                                                ]
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "products.store",
                "summary": "Create a canonical product. Variants, media and collections are not set here",
                "tags": [
                    "Product"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/StoreProductRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`ProductResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/ProductResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/products\/{product}": {
            "get": {
                "operationId": "products.show",
                "summary": "Show a product with its variants (and their media and bundle components), media, collections and listings",
                "tags": [
                    "Product"
                ],
                "parameters": [
                    {
                        "name": "product",
                        "in": "path",
                        "required": true,
                        "description": "The product ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ProductResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#\/components\/schemas\/ProductResource"
                                                },
                                                {
                                                    "type": "object",
                                                    "required": [
                                                        "variants",
                                                        "media",
                                                        "collections",
                                                        "listings"
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/variants\/{variant}\/components": {
            "put": {
                "operationId": "variants.components.update",
                "summary": "Replace a bundle's contents. Order in the list sets `position`; an empty list turns the\nbundle back into a plain variant",
                "tags": [
                    "ProductVariantComponent"
                ],
                "parameters": [
                    {
                        "name": "variant",
                        "in": "path",
                        "required": true,
                        "description": "The variant ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/UpdateVariantComponentsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ProductVariantResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#\/components\/schemas\/ProductVariantResource"
                                                },
                                                {
                                                    "type": "object",
                                                    "required": [
                                                        "components"
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/purchase-orders": {
            "get": {
                "operationId": "purchase-orders.index",
                "summary": "List purchase orders, newest first. `search` matches the PO number",
                "tags": [
                    "PurchaseOrder"
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    },
                    {
                        "name": "status",
                        "in": "query",
                        "schema": {
                            "anyOf": [
                                {
                                    "$ref": "#\/components\/schemas\/PurchaseOrderStatus"
                                },
                                {
                                    "type": "null"
                                }
                            ]
                        }
                    },
                    {
                        "name": "vendor_id",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `PurchaseOrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/PurchaseOrderData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "purchase-orders.store",
                "summary": "Create a purchase order. Item and purchase order totals are computed from costs",
                "tags": [
                    "PurchaseOrder"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "po_number": {
                                        "type": "string"
                                    },
                                    "currency": {
                                        "type": "string"
                                    },
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "title": {
                                                    "type": "string"
                                                },
                                                "quantity": {
                                                    "type": "integer"
                                                },
                                                "unit_cost": {
                                                    "type": "number"
                                                },
                                                "quantity_received": {
                                                    "type": "integer"
                                                },
                                                "tax_total": {
                                                    "type": "number"
                                                },
                                                "product_variant_id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "vendor_sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_title": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": [
                                                        "number",
                                                        "null"
                                                    ]
                                                },
                                                "id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "title",
                                                "quantity",
                                                "unit_cost"
                                            ]
                                        }
                                    },
                                    "vendor_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "status": {
                                        "$ref": "#\/components\/schemas\/PurchaseOrderStatus"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "shipping_total": {
                                        "type": "number"
                                    },
                                    "notes": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "ordered_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "expected_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "cancelled_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "shipping_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "subtotal": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "tax_total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                },
                                "required": [
                                    "po_number",
                                    "currency",
                                    "items"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`PurchaseOrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/purchase-orders\/{purchaseOrder}": {
            "get": {
                "operationId": "purchase-orders.show",
                "summary": "Show a purchase order with its items and shipping address",
                "tags": [
                    "PurchaseOrder"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PurchaseOrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "purchase-orders.update",
                "summary": "Update a purchase order. Omitted fields keep their values. Sending `items` replaces the\nitem list: items with an `id` are edited, the rest created, and the other items deleted.\nTotals are recomputed",
                "tags": [
                    "PurchaseOrder"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "po_number": {
                                        "type": "string"
                                    },
                                    "currency": {
                                        "type": "string"
                                    },
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "title": {
                                                    "type": "string"
                                                },
                                                "quantity": {
                                                    "type": "integer"
                                                },
                                                "unit_cost": {
                                                    "type": "number"
                                                },
                                                "quantity_received": {
                                                    "type": "integer"
                                                },
                                                "tax_total": {
                                                    "type": "number"
                                                },
                                                "product_variant_id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "vendor_sku": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "variant_title": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": [
                                                        "number",
                                                        "null"
                                                    ]
                                                },
                                                "id": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "title",
                                                "quantity",
                                                "unit_cost"
                                            ]
                                        }
                                    },
                                    "vendor_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "status": {
                                        "$ref": "#\/components\/schemas\/PurchaseOrderStatus"
                                    },
                                    "discount_total": {
                                        "type": "number"
                                    },
                                    "shipping_total": {
                                        "type": "number"
                                    },
                                    "notes": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "ordered_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "expected_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "cancelled_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "shipping_address": {
                                        "type": "object",
                                        "properties": {
                                            "country_code": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "company": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "address2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "city": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "province_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "postal_code": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "phone": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "id": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ]
                                            }
                                        }
                                    },
                                    "subtotal": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "tax_total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PurchaseOrderData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "purchase-orders.destroy",
                "summary": "Delete a purchase order with its items and shipping address snapshot",
                "tags": [
                    "PurchaseOrder"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/purchase-orders\/{purchaseOrder}\/items": {
            "get": {
                "operationId": "purchase-orders.items.index",
                "summary": "List the purchase order's lines",
                "tags": [
                    "PurchaseOrderItem"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PurchaseOrderItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/PurchaseOrderItemData"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "purchase-orders.items.store",
                "summary": "Add a line to the purchase order. Its `total` is computed from its cost",
                "tags": [
                    "PurchaseOrderItem"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "title": {
                                        "type": "string"
                                    },
                                    "quantity": {
                                        "type": "integer"
                                    },
                                    "unit_cost": {
                                        "type": "number"
                                    },
                                    "quantity_received": {
                                        "type": "integer"
                                    },
                                    "tax_total": {
                                        "type": "number"
                                    },
                                    "product_variant_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "vendor_sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_title": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                },
                                "required": [
                                    "title",
                                    "quantity",
                                    "unit_cost"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`PurchaseOrderItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/purchase-orders\/{purchaseOrder}\/items\/{item}": {
            "get": {
                "operationId": "purchase-orders.items.show",
                "summary": "Show one line of the purchase order",
                "tags": [
                    "PurchaseOrderItem"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PurchaseOrderItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "purchase-orders.items.update",
                "summary": "Update a line. Omitted fields keep their values; the line and purchase order totals are recomputed",
                "tags": [
                    "PurchaseOrderItem"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "title": {
                                        "type": "string"
                                    },
                                    "quantity": {
                                        "type": "integer"
                                    },
                                    "unit_cost": {
                                        "type": "number"
                                    },
                                    "quantity_received": {
                                        "type": "integer"
                                    },
                                    "tax_total": {
                                        "type": "number"
                                    },
                                    "product_variant_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "vendor_sku": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "variant_title": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "total": {
                                        "type": [
                                            "number",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PurchaseOrderItemData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/PurchaseOrderItemData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "purchase-orders.items.destroy",
                "summary": "Remove a line and recompute the purchase order totals",
                "tags": [
                    "PurchaseOrderItem"
                ],
                "parameters": [
                    {
                        "name": "purchaseOrder",
                        "in": "path",
                        "required": true,
                        "description": "The purchase order ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/connections\/{connection}\/sync-runs": {
            "get": {
                "operationId": "syncRun.index",
                "summary": "List a connection's 20 most recent sync runs",
                "tags": [
                    "SyncRun"
                ],
                "parameters": [
                    {
                        "name": "connection",
                        "in": "path",
                        "required": true,
                        "description": "The connection ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `SyncRunResource`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/SyncRunResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/vendors": {
            "get": {
                "operationId": "vendors.index",
                "summary": "List vendors by name. `search` matches the name or email",
                "tags": [
                    "Vendor"
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "maxLength": 255
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `VendorData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#\/components\/schemas\/VendorData"
                                            }
                                        },
                                        "links": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "url": {
                                                        "type": [
                                                            "string",
                                                            "null"
                                                        ]
                                                    },
                                                    "label": {
                                                        "type": "string"
                                                    },
                                                    "page": {
                                                        "type": [
                                                            "integer",
                                                            "null"
                                                        ]
                                                    },
                                                    "active": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "url",
                                                    "label",
                                                    "page",
                                                    "active"
                                                ]
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer"
                                                },
                                                "first_page_url": {
                                                    "type": "string"
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer"
                                                },
                                                "last_page_url": {
                                                    "type": "string"
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": "string"
                                                },
                                                "per_page": {
                                                    "type": "integer"
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ]
                                                },
                                                "total": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "first_page_url",
                                                "from",
                                                "last_page",
                                                "last_page_url",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "vendors.store",
                "summary": "Create a vendor",
                "tags": [
                    "Vendor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "phone": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "currency": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "notes": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                },
                                "required": [
                                    "name"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`VendorData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/VendorData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/vendors\/{vendor}": {
            "get": {
                "operationId": "vendors.show",
                "summary": "Show a vendor",
                "tags": [
                    "Vendor"
                ],
                "parameters": [
                    {
                        "name": "vendor",
                        "in": "path",
                        "required": true,
                        "description": "The vendor ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`VendorData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/VendorData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "vendors.update",
                "summary": "Update a vendor. Omitted fields keep their values",
                "tags": [
                    "Vendor"
                ],
                "parameters": [
                    {
                        "name": "vendor",
                        "in": "path",
                        "required": true,
                        "description": "The vendor ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "phone": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "currency": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "notes": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "created_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    },
                                    "updated_at": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "date-time"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`VendorData`",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#\/components\/schemas\/VendorData"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "vendors.destroy",
                "summary": "Delete a vendor and its addresses. Its purchase orders are kept, unlinked",
                "tags": [
                    "Vendor"
                ],
                "parameters": [
                    {
                        "name": "vendor",
                        "in": "path",
                        "required": true,
                        "description": "The vendor ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "No content"
                    },
                    "404": {
                        "$ref": "#\/components\/responses\/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "ActionItemData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "meeting_id": {
                        "type": "integer"
                    },
                    "agent_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "agent_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "experiment_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "body": {
                        "type": "string"
                    },
                    "report": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "awaiting_approval": {
                        "type": "boolean"
                    },
                    "due_on": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "completed_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "meeting_id",
                    "body",
                    "awaiting_approval",
                    "created_at"
                ],
                "title": "ActionItemData"
            },
            "AddressData": {
                "type": "object",
                "properties": {
                    "country_code": {
                        "type": "string"
                    },
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "address1": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "address2": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "city": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "province": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "province_code": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "postal_code": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    }
                },
                "required": [
                    "country_code"
                ],
                "title": "AddressData"
            },
            "AgendaItemData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "body": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "body",
                    "created_at"
                ],
                "title": "AgendaItemData"
            },
            "AgentData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "role": {
                        "$ref": "#\/components\/schemas\/AgentRole"
                    },
                    "autonomy_tier": {
                        "type": "integer"
                    },
                    "active_prompt_version_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fired_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "active_prompt_version": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/AgentPromptVersionData"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "tools": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "scorecard": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "role",
                    "autonomy_tier",
                    "created_at"
                ],
                "title": "AgentData"
            },
            "AgentPromptVersionData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agent_id": {
                        "type": "integer"
                    },
                    "version": {
                        "type": "integer"
                    },
                    "brief": {
                        "type": "string"
                    },
                    "provider": {
                        "type": "string"
                    },
                    "model": {
                        "type": "string"
                    },
                    "temperature": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "agent_id",
                    "version",
                    "brief",
                    "provider",
                    "model",
                    "created_at"
                ],
                "title": "AgentPromptVersionData"
            },
            "AgentRole": {
                "type": "string",
                "enum": [
                    "ceo",
                    "analyst",
                    "growth",
                    "copywriter"
                ],
                "title": "AgentRole"
            },
            "AgentSpendData": {
                "type": "object",
                "properties": {
                    "agent_id": {
                        "type": "integer"
                    },
                    "spent_today": {
                        "type": "number"
                    },
                    "spent_this_week": {
                        "type": "number"
                    },
                    "calls": {
                        "type": "integer"
                    },
                    "input_tokens": {
                        "type": "integer"
                    },
                    "output_tokens": {
                        "type": "integer"
                    },
                    "cost": {
                        "type": "number"
                    },
                    "days": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/AiSpendDayData"
                        }
                    }
                },
                "required": [
                    "agent_id",
                    "spent_today",
                    "spent_this_week",
                    "calls",
                    "input_tokens",
                    "output_tokens",
                    "cost",
                    "days"
                ],
                "title": "AgentSpendData"
            },
            "AiSpendAgentData": {
                "type": "object",
                "properties": {
                    "agent_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "agent_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "calls": {
                        "type": "integer"
                    },
                    "input_tokens": {
                        "type": "integer"
                    },
                    "output_tokens": {
                        "type": "integer"
                    },
                    "cost": {
                        "type": "number"
                    }
                },
                "required": [
                    "calls",
                    "input_tokens",
                    "output_tokens",
                    "cost"
                ],
                "title": "AiSpendAgentData"
            },
            "AiSpendData": {
                "type": "object",
                "properties": {
                    "daily_limit": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "weekly_limit": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "spent_today": {
                        "type": "number"
                    },
                    "spent_this_week": {
                        "type": "number"
                    },
                    "days": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/AiSpendDayData"
                        }
                    },
                    "agents": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/AiSpendAgentData"
                        }
                    }
                },
                "required": [
                    "spent_today",
                    "spent_this_week",
                    "days",
                    "agents"
                ],
                "title": "AiSpendData"
            },
            "AiSpendDayData": {
                "type": "object",
                "properties": {
                    "date": {
                        "type": "string"
                    },
                    "calls": {
                        "type": "integer"
                    },
                    "input_tokens": {
                        "type": "integer"
                    },
                    "output_tokens": {
                        "type": "integer"
                    },
                    "cost": {
                        "type": "number"
                    }
                },
                "required": [
                    "date",
                    "calls",
                    "input_tokens",
                    "output_tokens",
                    "cost"
                ],
                "title": "AiSpendDayData"
            },
            "CollectionResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "title": {
                        "type": "string"
                    },
                    "handle": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description_html": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "image_url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_smart": {
                        "type": "boolean"
                    },
                    "rules": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {}
                    },
                    "products_count": {
                        "type": "integer"
                    },
                    "products": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ProductResource"
                        }
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "title",
                    "handle",
                    "description_html",
                    "image_url",
                    "is_smart",
                    "rules",
                    "created_at",
                    "updated_at"
                ],
                "title": "CollectionResource"
            },
            "ConnectionAuthType": {
                "type": "string",
                "description": "The authentication scheme a connector uses to talk to the external system.\n",
                "enum": [
                    "api_key",
                    "oauth2",
                    "client_credentials",
                    "basic_auth",
                    "bearer_token",
                    "custom"
                ],
                "title": "ConnectionAuthType"
            },
            "ConnectionResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "connector_key": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/ConnectionStatus"
                    },
                    "is_enabled": {
                        "type": "boolean"
                    },
                    "config": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "additionalProperties": {}
                    },
                    "credentials_set": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "boolean"
                        }
                    },
                    "external_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "last_synced_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "last_error": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "connector_key",
                    "name",
                    "status",
                    "is_enabled",
                    "config",
                    "credentials_set",
                    "external_id",
                    "last_synced_at",
                    "last_error",
                    "created_at",
                    "updated_at"
                ],
                "title": "ConnectionResource"
            },
            "ConnectionStatus": {
                "type": "string",
                "description": "Lifecycle state of a connection. Starts Pending until credentials are verified, then reflects the outcome of the most recent test.\n",
                "enum": [
                    "pending",
                    "connected",
                    "disconnected",
                    "error"
                ],
                "title": "ConnectionStatus"
            },
            "ConnectorAction": {
                "type": "object",
                "properties": {
                    "key": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "icon": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "confirm": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "help": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "primary": {
                        "type": "boolean"
                    },
                    "requires_enabled": {
                        "type": "boolean"
                    }
                },
                "required": [
                    "key",
                    "label",
                    "icon",
                    "confirm",
                    "help",
                    "primary",
                    "requires_enabled"
                ],
                "title": "ConnectorAction"
            },
            "ConnectorResource": {
                "type": "object",
                "properties": {
                    "key": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "auth_type": {
                        "$ref": "#\/components\/schemas\/ConnectionAuthType"
                    },
                    "credential_fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/CredentialField"
                        }
                    },
                    "actions": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ConnectorAction"
                        }
                    }
                },
                "required": [
                    "key",
                    "label",
                    "auth_type",
                    "credential_fields",
                    "actions"
                ],
                "title": "ConnectorResource"
            },
            "CredentialField": {
                "type": "object",
                "properties": {
                    "key": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "secret": {
                        "type": "boolean"
                    },
                    "required": {
                        "type": "boolean"
                    },
                    "help": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "key",
                    "label",
                    "type",
                    "secret",
                    "required",
                    "help"
                ],
                "title": "CredentialField"
            },
            "CritiqueData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "experiment_id": {
                        "type": "integer"
                    },
                    "agent_id": {
                        "type": "integer"
                    },
                    "agent_name": {
                        "type": "string"
                    },
                    "stance": {
                        "$ref": "#\/components\/schemas\/CritiqueStance"
                    },
                    "comment": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "experiment_id",
                    "agent_id",
                    "agent_name",
                    "stance",
                    "comment",
                    "created_at"
                ],
                "title": "CritiqueData"
            },
            "CritiqueStance": {
                "type": "string",
                "enum": [
                    "support",
                    "challenge"
                ],
                "title": "CritiqueStance"
            },
            "CustomerData": {
                "type": "object",
                "properties": {
                    "external_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "first_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "last_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "external_updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "addresses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "$ref": "#\/components\/schemas\/AddressData"
                        }
                    },
                    "orders_count": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    }
                },
                "title": "CustomerData"
            },
            "ExperimentData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "meeting_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "proposed_by_agent_id": {
                        "type": "integer"
                    },
                    "hypothesis": {
                        "type": "string"
                    },
                    "evidence": {
                        "type": "string"
                    },
                    "metric": {
                        "$ref": "#\/components\/schemas\/ExperimentMetric"
                    },
                    "sku": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "baseline": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "target_change_percent": {
                        "type": "number"
                    },
                    "target": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "review_in_days": {
                        "type": "integer"
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/ExperimentStatus"
                    },
                    "awaiting_review": {
                        "type": "boolean"
                    },
                    "deferred": {
                        "type": "boolean"
                    },
                    "decision_rationale": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "decided_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "starts_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "review_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "result_value": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "result_note": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "closed_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "critiques": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/CritiqueData"
                        }
                    }
                },
                "required": [
                    "id",
                    "proposed_by_agent_id",
                    "hypothesis",
                    "evidence",
                    "metric",
                    "target_change_percent",
                    "review_in_days",
                    "status",
                    "awaiting_review",
                    "deferred",
                    "created_at"
                ],
                "title": "ExperimentData"
            },
            "ExperimentMetric": {
                "type": "string",
                "description": "What an experiment moves. Each metric measures itself, so the analyst's tool and the experiment closer can never disagree on a number.\n",
                "enum": [
                    "revenue",
                    "orders",
                    "aov",
                    "units_sold",
                    "product_revenue"
                ],
                "title": "ExperimentMetric"
            },
            "ExperimentStatus": {
                "type": "string",
                "description": "Draft \u2192 (CEO) Approved or Vetoed; a deferred draft stays Draft \u2192 (user) Running \u2192 (meeting) Won or Lost. \"Awaiting review\" is not stored: it is a running experiment whose review_at has passed.\n",
                "enum": [
                    "draft",
                    "approved",
                    "running",
                    "won",
                    "lost",
                    "inconclusive",
                    "vetoed"
                ],
                "title": "ExperimentStatus"
            },
            "ListingResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "connection_id": {
                        "type": "integer"
                    },
                    "external_id": {
                        "type": "string"
                    },
                    "external_handle": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "external_url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/ListingStatus"
                    },
                    "external_created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "external_updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "last_pulled_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "last_pushed_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "connection_id",
                    "external_id",
                    "external_handle",
                    "external_url",
                    "status",
                    "external_created_at",
                    "external_updated_at",
                    "last_pulled_at",
                    "last_pushed_at"
                ],
                "title": "ListingResource"
            },
            "ListingStatus": {
                "type": "string",
                "enum": [
                    "active",
                    "draft",
                    "archived",
                    "removed"
                ],
                "title": "ListingStatus"
            },
            "LoginRequest": {
                "type": "object",
                "properties": {
                    "email": {
                        "type": "string",
                        "format": "email"
                    },
                    "password": {
                        "type": "string"
                    }
                },
                "required": [
                    "email",
                    "password"
                ],
                "title": "LoginRequest"
            },
            "MediaType": {
                "type": "string",
                "enum": [
                    "image",
                    "video",
                    "external_video",
                    "model_3d"
                ],
                "title": "MediaType"
            },
            "MeetingData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "type": {
                        "$ref": "#\/components\/schemas\/MeetingType"
                    },
                    "meeting_schedule_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/MeetingStatus"
                    },
                    "brief": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "additionalProperties": {}
                    },
                    "summary": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "takeaways": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "error": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "started_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "finished_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "agenda": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/AgendaItemData"
                        }
                    },
                    "closed_experiments": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ExperimentData"
                        }
                    },
                    "proposed_experiments": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ExperimentData"
                        }
                    },
                    "decided_experiments": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ExperimentData"
                        }
                    },
                    "critiques": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/CritiqueData"
                        }
                    },
                    "action_items": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ActionItemData"
                        }
                    },
                    "turns": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/MeetingTurnData"
                        }
                    }
                },
                "required": [
                    "id",
                    "type",
                    "status",
                    "created_at"
                ],
                "title": "MeetingData"
            },
            "MeetingScheduleData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "type": {
                        "$ref": "#\/components\/schemas\/MeetingType"
                    },
                    "cron": {
                        "type": "string"
                    },
                    "timezone": {
                        "type": "string"
                    },
                    "agenda": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "is_active": {
                        "type": "boolean"
                    },
                    "next_run_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "last_run_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "next_runs": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "type",
                    "cron",
                    "timezone",
                    "agenda",
                    "is_active",
                    "next_runs",
                    "created_at"
                ],
                "title": "MeetingScheduleData"
            },
            "MeetingStatus": {
                "type": "string",
                "enum": [
                    "draft",
                    "running",
                    "done",
                    "failed"
                ],
                "title": "MeetingStatus"
            },
            "MeetingTurnData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agent_id": {
                        "type": "integer"
                    },
                    "agent_name": {
                        "type": "string"
                    },
                    "step": {
                        "type": "string"
                    },
                    "prompt": {
                        "type": "string"
                    },
                    "output": {
                        "type": "object",
                        "additionalProperties": {}
                    },
                    "input_tokens": {
                        "type": "integer"
                    },
                    "output_tokens": {
                        "type": "integer"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "agent_id",
                    "agent_name",
                    "step",
                    "prompt",
                    "output",
                    "input_tokens",
                    "output_tokens",
                    "created_at"
                ],
                "title": "MeetingTurnData"
            },
            "MeetingType": {
                "type": "string",
                "description": "A board meeting runs the full pipeline; a check-in only closes due experiments, briefs and writes the minutes, so it costs one CEO call.\n",
                "enum": [
                    "board",
                    "check_in"
                ],
                "title": "MeetingType"
            },
            "OrderData": {
                "type": "object",
                "properties": {
                    "currency": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/OrderProductData"
                        }
                    },
                    "customer_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "order_number": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "payment_status": {
                        "$ref": "#\/components\/schemas\/OrderPaymentStatus"
                    },
                    "fulfillment_status": {
                        "$ref": "#\/components\/schemas\/OrderFulfillmentStatus"
                    },
                    "discount_total": {
                        "type": "number"
                    },
                    "shipping_total": {
                        "type": "number"
                    },
                    "placed_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "cancelled_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "billing_address": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/AddressData"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "shipping_address": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/AddressData"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "customer": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/CustomerData"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "subtotal": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "tax_total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "external_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "external_updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "connection_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "currency",
                    "items"
                ],
                "title": "OrderData"
            },
            "OrderFulfillmentStatus": {
                "type": "string",
                "enum": [
                    "unfulfilled",
                    "partially_fulfilled",
                    "fulfilled"
                ],
                "title": "OrderFulfillmentStatus"
            },
            "OrderPaymentStatus": {
                "type": "string",
                "enum": [
                    "pending",
                    "authorized",
                    "paid",
                    "partially_refunded",
                    "refunded",
                    "voided"
                ],
                "title": "OrderPaymentStatus"
            },
            "OrderProductData": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "integer"
                    },
                    "unit_price": {
                        "type": "number"
                    },
                    "discount_total": {
                        "type": "number"
                    },
                    "tax_total": {
                        "type": "number"
                    },
                    "product_variant_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sku": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "variant_title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "external_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "variant_external_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    }
                },
                "required": [
                    "title",
                    "quantity",
                    "unit_price"
                ],
                "title": "OrderProductData"
            },
            "ProductMediaResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "product_id": {
                        "type": "integer"
                    },
                    "type": {
                        "$ref": "#\/components\/schemas\/MediaType"
                    },
                    "url": {
                        "type": "string"
                    },
                    "preview_url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "alt": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "mime_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "width": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "height": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "position": {
                        "type": "integer"
                    },
                    "sources": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "object",
                            "properties": {
                                "url": {
                                    "type": "string"
                                },
                                "format": {
                                    "type": "string"
                                },
                                "mime_type": {
                                    "type": "string"
                                },
                                "width": {
                                    "type": "integer"
                                },
                                "height": {
                                    "type": "integer"
                                }
                            },
                            "required": [
                                "url"
                            ]
                        }
                    }
                },
                "required": [
                    "id",
                    "product_id",
                    "type",
                    "url",
                    "preview_url",
                    "alt",
                    "mime_type",
                    "width",
                    "height",
                    "position",
                    "sources"
                ],
                "title": "ProductMediaResource"
            },
            "ProductResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "title": {
                        "type": "string"
                    },
                    "handle": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description_html": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "product_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/ProductStatus"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "seo_title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "seo_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "options": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string"
                                },
                                "values": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                }
                            },
                            "required": [
                                "name",
                                "values"
                            ]
                        }
                    },
                    "attributes": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "additionalProperties": {}
                    },
                    "published_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "variants": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ProductVariantResource"
                        }
                    },
                    "media": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ProductMediaResource"
                        }
                    },
                    "collections": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/CollectionResource"
                        }
                    },
                    "listings": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ListingResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "title",
                    "handle",
                    "description_html",
                    "description",
                    "product_type",
                    "status",
                    "tags",
                    "seo_title",
                    "seo_description",
                    "options",
                    "attributes",
                    "published_at",
                    "created_at",
                    "updated_at"
                ],
                "title": "ProductResource"
            },
            "ProductStatus": {
                "type": "string",
                "enum": [
                    "active",
                    "draft",
                    "archived"
                ],
                "title": "ProductStatus"
            },
            "ProductVariantResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "product_id": {
                        "type": "integer"
                    },
                    "title": {
                        "type": "string"
                    },
                    "sku": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "barcode": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "price": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "compare_at_price": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "position": {
                        "type": "integer"
                    },
                    "selected_options": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "additionalProperties": {
                            "type": "string"
                        }
                    },
                    "inventory_quantity": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "inventory_policy": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "taxable": {
                        "type": "boolean"
                    },
                    "requires_shipping": {
                        "type": "boolean"
                    },
                    "weight": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "weight_unit": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "media_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "attributes": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "additionalProperties": {}
                    },
                    "media": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/ProductMediaResource"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "quantity": {
                        "type": "integer",
                        "description": "Set when this variant is listed as a bundle component."
                    },
                    "components": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/ProductVariantResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "product_id",
                    "title",
                    "sku",
                    "barcode",
                    "price",
                    "compare_at_price",
                    "currency",
                    "position",
                    "selected_options",
                    "inventory_quantity",
                    "inventory_policy",
                    "taxable",
                    "requires_shipping",
                    "weight",
                    "weight_unit",
                    "media_id",
                    "attributes"
                ],
                "title": "ProductVariantResource"
            },
            "PurchaseOrderData": {
                "type": "object",
                "properties": {
                    "po_number": {
                        "type": "string"
                    },
                    "currency": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#\/components\/schemas\/PurchaseOrderItemData"
                        }
                    },
                    "vendor_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/PurchaseOrderStatus"
                    },
                    "discount_total": {
                        "type": "number"
                    },
                    "shipping_total": {
                        "type": "number"
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "ordered_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "expected_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "cancelled_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "shipping_address": {
                        "anyOf": [
                            {
                                "$ref": "#\/components\/schemas\/AddressData"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "subtotal": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "tax_total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "po_number",
                    "currency",
                    "items"
                ],
                "title": "PurchaseOrderData"
            },
            "PurchaseOrderItemData": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "integer"
                    },
                    "unit_cost": {
                        "type": "number"
                    },
                    "quantity_received": {
                        "type": "integer"
                    },
                    "tax_total": {
                        "type": "number"
                    },
                    "product_variant_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sku": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "vendor_sku": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "variant_title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "total": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    }
                },
                "required": [
                    "title",
                    "quantity",
                    "unit_cost"
                ],
                "title": "PurchaseOrderItemData"
            },
            "PurchaseOrderStatus": {
                "type": "string",
                "enum": [
                    "draft",
                    "ordered",
                    "partially_received",
                    "received",
                    "cancelled"
                ],
                "title": "PurchaseOrderStatus"
            },
            "StoreConnectionRequest": {
                "type": "object",
                "properties": {
                    "connector_key": {
                        "type": "string",
                        "enum": [
                            "shopify",
                            "anthropic"
                        ]
                    },
                    "name": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "credentials": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "description": "Values for the connector's secret fields, keyed by field key.",
                        "additionalProperties": {}
                    },
                    "config": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "description": "Values for the connector's non-secret fields, keyed by field key.",
                        "additionalProperties": {}
                    },
                    "is_enabled": {
                        "type": "boolean"
                    }
                },
                "required": [
                    "connector_key",
                    "name"
                ],
                "title": "StoreConnectionRequest"
            },
            "StoreProductRequest": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "handle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "description_html": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "product_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/ProductStatus"
                    },
                    "tags": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "string",
                            "maxLength": 255
                        }
                    },
                    "seo_title": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "seo_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "options": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string",
                                    "maxLength": 255
                                },
                                "values": {
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "minItems": 1
                                }
                            },
                            "required": [
                                "name",
                                "values"
                            ]
                        }
                    },
                    "attributes": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "published_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "title"
                ],
                "title": "StoreProductRequest"
            },
            "SyncRunResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "connection_id": {
                        "type": "integer"
                    },
                    "kind": {
                        "type": "string"
                    },
                    "mode": {
                        "type": "string"
                    },
                    "status": {
                        "$ref": "#\/components\/schemas\/SyncRunStatus"
                    },
                    "since": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stats": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "properties": {
                            "products": {
                                "type": "integer"
                            },
                            "variants": {
                                "type": "integer"
                            },
                            "media": {
                                "type": "integer"
                            },
                            "collections": {
                                "type": "integer"
                            },
                            "removed": {
                                "type": "integer"
                            }
                        },
                        "required": [
                            "products",
                            "variants",
                            "media",
                            "collections",
                            "removed"
                        ]
                    },
                    "error": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "started_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "finished_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "connection_id",
                    "kind",
                    "mode",
                    "status",
                    "since",
                    "stats",
                    "error",
                    "started_at",
                    "finished_at",
                    "created_at"
                ],
                "title": "SyncRunResource"
            },
            "SyncRunStatus": {
                "type": "string",
                "enum": [
                    "pending",
                    "running",
                    "importing",
                    "completed",
                    "failed"
                ],
                "title": "SyncRunStatus"
            },
            "UpdateConnectionRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "credentials": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "description": "Values for the connector's secret fields, keyed by field key.",
                        "additionalProperties": {}
                    },
                    "config": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "description": "Values for the connector's non-secret fields, keyed by field key.",
                        "additionalProperties": {}
                    },
                    "is_enabled": {
                        "type": "boolean"
                    }
                },
                "title": "UpdateConnectionRequest"
            },
            "UpdatePasswordRequest": {
                "type": "object",
                "properties": {
                    "current_password": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string"
                    },
                    "password_confirmation": {
                        "type": "string"
                    }
                },
                "required": [
                    "current_password",
                    "password",
                    "password_confirmation"
                ],
                "title": "UpdatePasswordRequest"
            },
            "UpdateVariantComponentsRequest": {
                "type": "object",
                "properties": {
                    "components": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "variant_id": {
                                    "type": "integer"
                                },
                                "quantity": {
                                    "type": "integer",
                                    "minimum": 1
                                }
                            },
                            "required": [
                                "variant_id",
                                "quantity"
                            ]
                        },
                        "uniqueItems": true
                    }
                },
                "required": [
                    "components"
                ],
                "title": "UpdateVariantComponentsRequest"
            },
            "UserResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "email_verified_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "email_verified_at",
                    "created_at",
                    "updated_at"
                ],
                "title": "UserResource"
            },
            "VendorData": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "name"
                ],
                "title": "VendorData"
            }
        },
        "responses": {
            "ValidationException": {
                "description": "Validation error",
                "content": {
                    "application\/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Errors overview."
                                },
                                "errors": {
                                    "type": "object",
                                    "description": "A detailed description of each field that failed validation.",
                                    "additionalProperties": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                }
                            },
                            "required": [
                                "message",
                                "errors"
                            ]
                        }
                    }
                }
            },
            "AuthenticationException": {
                "description": "Unauthenticated",
                "content": {
                    "application\/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            },
            "ModelNotFoundException": {
                "description": "Not found",
                "content": {
                    "application\/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            }
        }
    }
}