{
  "openapi": "3.1.0",
  "info": {
    "title": "Jio Studio AI Tools",
    "version": "1.0.0",
    "description": "Read Jio Studio services and portfolio projects, and prepare user-confirmed WhatsApp inquiry links. These endpoints never send messages automatically."
  },
  "servers": [
    {
      "url": "https://jio.ge"
    }
  ],
  "paths": {
    "/api/tools/get_services": {
      "get": {
        "operationId": "get_services",
        "summary": "Get Jio Studio's custom furniture services.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/get_portfolio_projects": {
      "get": {
        "operationId": "get_portfolio_projects",
        "summary": "Get portfolio projects.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 12,
              "default": 12
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/search_projects_by_room": {
      "get": {
        "operationId": "search_projects_by_room",
        "summary": "Search projects by room or furniture type.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          },
          {
            "name": "room",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Room or furniture type, for example kitchen, bedroom, wardrobe, bathroom, office, apartment."
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/get_project_details": {
      "get": {
        "operationId": "get_project_details",
        "summary": "Get details for a portfolio project by slug, including image URLs and Markdown image syntax.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          },
          {
            "name": "slug",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Project slug, for example studio-apartment-furniture."
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/get_project_images": {
      "get": {
        "operationId": "get_project_images",
        "summary": "Get renderable image URLs and Markdown image syntax for a portfolio project.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          },
          {
            "name": "slug",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Project slug, for example studio-apartment-furniture."
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 20,
              "default": 9
            }
          },
          {
            "name": "include_image_blobs",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": false
            },
            "description": "When true, returns up to 3 base64 image blobs in addition to URLs. Prefer MCP image content blocks when available."
          },
          {
            "name": "image_blob_limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 3,
              "default": 3
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/start_custom_furniture_inquiry": {
      "get": {
        "operationId": "start_custom_furniture_inquiry",
        "summary": "Return the WhatsApp contact action URL. User must send the message manually in WhatsApp.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/prepare_whatsapp_message": {
      "get": {
        "operationId": "prepare_whatsapp_message",
        "summary": "Prepare a WhatsApp inquiry message and URL. Does not send automatically.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          },
          {
            "name": "project_type",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "room_dimensions",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notes",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tools/get_contact_info": {
      "get": {
        "operationId": "get_contact_info",
        "summary": "Get public Jio Studio contact details and social links.",
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ka",
                "en"
              ],
              "default": "ka"
            },
            "description": "Preferred language. Georgian is default."
          }
        ],
        "responses": {
          "200": {
            "description": "Tool result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "tool": {
                      "type": "string"
                    },
                    "ok": {
                      "type": "boolean"
                    },
                    "result": {
                      "type": "object"
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
