{
  "openapi": "3.0.0",
  "info": {
    "title": "Image Onboarding API Reference",
    "version": "",
    "description": "Bria's Image Onboarding API allows registering images to Bria without database storage. \n\nIt provides a simple way to obtain a visual identifier (visual_id) needed for specific Bria features like AI Search and the Image Editing Create endpoint. Images can be registered using either publicly accessible URLs or internal image keys. The API also includes functionality to remove registered images from your organization's gallery when needed.\n"
  },
  "externalDocs": {
    "description": "Register and get API Access",
    "url": "https://platform.bria.ai/console/account/api-keys"
  },
  "servers": [
    {
      "url": "https://engine.prod.bria-api.com/v1"
    }
  ],
  "paths": {
    "/register": {
      "post": {
        "summary": "Register Image",
        "tags": [
          "Endpoints"
        ],
        "description": "\n**Description**\n\nA new visual can be registered to Bria without being uploaded to the database using the *Register Route*.\nThis route returns a visual identification to the user. This is the recommended method to onboard images to Bria, when needed.\n\nIt's the first step for consuming the Bria API for new visuals (instead of using the /upload route).\n\n**Response**\n\n  \n  The visual id in the response of the *Register Route* must be kept by the\nuser in order to query image info, modify the image and use the search routes.\n\n```{ \"visual_id\": \"9ea9a4d2d19977a7c\" }```\n\nThe *visual_id* in the response of the /upload route will be used for all other routes. Store the visual_id in your database and map it to your image identification method for easy reference\n\n**Constraints**\n\nFiles should not be larger than 12MB. The status code 413 will be returned if the file exceeds its maximum size.\n\nThe Bria API currently supports only JPEG and PNG files in RGB, RGBA, or CMYK color modes. When the file is of a different type or color mode, the status code 415 will be returned.",
        "operationId": "register-image",
        "parameters": [
          {
            "in": "header",
            "name": "api_token",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "org_image_key": {
                    "type": "string",
                    "description": "The internal image id in your API, of the image you would like to register to Bria. If accessing your images requires authentication, you will be able to register them using org_image_key only after giving Bria the API authentication information. It is also possible to register images using an org_image_key, without any authentication data."
                  },
                  "image_url": {
                    "description": "The URL of the image you would like to register to Bria. The URL should lead to an image publicly available online. Either an org_image_key or an image_url should be provided. If both are provided, then the route will use image_url and org_image_key will be saved but not used. Images can only be registered using an image_url if they do not require authentication.",
                    "type": "string"
                  },
                  "is_private": {
                    "description": "The image can be included in the Bria public gallery (is_private=false) or only in the Bria gallery of your organization (is_private=true). This parameter is optional and the default value is true.",
                    "type": "string",
                    "default": true
                  }
                }
              },
              "examples": {
                "only image_url": {
                  "value": {
                    "image_url": "https://i.natgeofe.com/n/548467d8-c5f1-4551-9f58-6817a8d2c45e/NationalGeographic_2572187_square.jpg"
                  }
                },
                "only org_image_key": {
                  "value": {
                    "org_image_key": "12345acbd"
                  }
                },
                "image_url & org_image_key": {
                  "value": {
                    "image_url": "https://i.natgeofe.com/n/548467d8-c5f1-4551-9f58-6817a8d2c45e/NationalGeographic_2572187_square.jpg",
                    "org_image_key": "12345acbd"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful operation.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "visual_id": {
                      "type": "string",
                      "description": "Unique visual identification"
                    }
                  }
                }
              }
            }
          },
          "208": {
            "description": "Image already registered.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "visual_id": {
                      "type": "string",
                      "description": "Unique visual identification"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "405": {
            "description": "Method not allowed."
          },
          "460": {
            "description": "Failed to download image."
          },
          "500": {
            "description": "Internal server error."
          },
          "506": {
            "description": "Insufficient data. The given input is not supported by the Bria API."
          }
        }
      }
    },
    "/{visual_id}/remove_image": {
      "post": {
        "summary": "Remove Image",
        "tags": [
          "Endpoints"
        ],
        "description": "\n**Description**\n\nWith this route, you can remove an image from the gallery of your organization. The image won't be removed from Bria.",
        "operationId": "remove-image",
        "parameters": [
          {
            "in": "header",
            "name": "api_token",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "in": "path",
            "name": "visual_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "example": "b3cecc33cc31cc31"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful operation."
          },
          "400": {
            "description": "Bad request."
          },
          "405": {
            "description": "Method not allowed."
          },
          "460": {
            "description": "Failed to download image."
          },
          "500": {
            "description": "Internal server error."
          },
          "506": {
            "description": "Insufficient data. The given input is not supported by the Bria API."
          }
        }
      }
    }
  },
  "components": {}
}