openapi: 3.0.0 info: title: Leonardo.AI 3D Model Assets Init Images API description: Upload, retrieve, and delete 3D model assets for use with Rodin and other 3D-capable workflows. version: v1.0.0 contact: name: Leonardo.AI Support url: https://docs.leonardo.ai/docs/need-more-support license: name: Leonardo.AI Terms of Service url: https://leonardo.ai/terms-of-service/ servers: - url: https://cloud.leonardo.ai/api/rest/v1 description: Leonardo.AI Production API security: - bearerAuth: [] tags: - name: Init Images paths: /init-image: post: tags: - Init Images summary: Upload init image description: This endpoint returns presigned details to upload an init image to S3 operationId: uploadInitImage requestBody: content: application/json: schema: properties: extension: nullable: false title: String type: string description: Has to be png, jpg, jpeg, or webp. required: - extension type: object description: Query parameters provided in the request body as a JSON object required: true responses: '200': content: application/json: schema: type: object properties: uploadInitImage: nullable: true properties: fields: nullable: true title: String type: string id: nullable: true title: String type: string key: nullable: true title: String type: string url: nullable: true title: String type: string title: InitImageUploadOutput type: object description: Responses for POST /init-image /init-image/{id}: get: tags: - Init Images summary: Get single init image description: This endpoint will return a single init image operationId: getInitImageById parameters: - required: true description: _"id" is required_ in: path name: id schema: pattern: '[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}' type: string responses: '200': content: application/json: schema: type: object properties: init_images_by_pk: description: columns and relationships of "init_images" nullable: true properties: createdAt: $ref: '#/components/schemas/timestamp' id: $ref: '#/components/schemas/uuid' url: nullable: false title: String type: string title: init_images type: object description: Responses for GET /init-image/{id} delete: tags: - Init Images summary: Delete init image description: This endpoint deletes an init image operationId: deleteInitImageById parameters: - required: true description: _"id" is required_ in: path name: id schema: pattern: '[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}' type: string responses: '200': content: application/json: schema: type: object properties: delete_init_images_by_pk: description: columns and relationships of "init_images" nullable: true properties: id: $ref: '#/components/schemas/uuid' title: init_images type: object description: Responses for DELETE /init-image/{id} /canvas-init-image: post: tags: - Init Images summary: Upload Canvas Editor init and mask image description: This endpoint returns presigned details to upload an init image and a mask image to S3 operationId: uploadCanvasInitImage requestBody: content: application/json: schema: properties: initExtension: nullable: false title: String type: string description: Has to be png, jpg, jpeg, or webp. maskExtension: nullable: false title: String type: string description: Has to be png, jpg, jpeg, or webp. required: - initExtension - maskExtension type: object description: Query parameters provided in the request body as a JSON object required: true responses: '200': content: application/json: schema: type: object properties: uploadCanvasInitImage: nullable: true properties: initImageId: nullable: true title: String type: string initFields: nullable: true title: String type: string initKey: nullable: true title: String type: string initUrl: nullable: true title: String type: string maskImageId: nullable: true title: String type: string maskFields: nullable: true title: String type: string maskKey: nullable: true title: String type: string maskUrl: nullable: true title: String type: string title: CanvasInitImageUploadOutput type: object description: Responses for POST /canvas-init-image components: schemas: uuid: nullable: true pattern: '[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}' title: uuid type: string timestamp: type: string nullable: false title: timestamp securitySchemes: bearerAuth: type: http bearerFormat: auth-scheme description: 'Bearer HTTP authentication. Allowed headers `Authorization: Bearer `' scheme: bearer