openapi: 3.1.0 info: title: Undress API description: API for undressing images with different styles. version: 1.1.0 contact: name: NoDress url: https://nodress.io/ servers: - url: https://nodress.io/api/v1 components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT schemas: UndressRequest: type: object required: - source_image - style properties: source_image: type: string description: Base64 encoded source image in jpeg format. mask: type: string description: "Base64 encoded mask image in png format. Contains two colors: white for undressing regions, black for the rest." automask: type: boolean description: If set to true, mask will be automatically generated. style: type: string description: The style to apply for undressing. enum: [standard, premium, premium_v2, nurse, bdsm, underwear_white, underwear_black, underwear_pink] FaceSwapRequest: type: object required: - image - face properties: image: type: string description: Base64 encoded image. face: type: string description: Base64 encoded face image. UndressResponse: type: object properties: id: type: string description: Identifier for the job. FaceSwapResponse: type: object properties: id: type: string description: Identifier for the job. ErrorResponse: type: object properties: error: type: string errors: type: array items: type: string UndressResultResponse: type: object properties: status: type: string description: Status of the undress job. enum: [pending, completed, failed] image: type: string description: URL of the generated image, if the job is completed. FaceSwapResultResponse: type: object properties: status: type: string description: Status of the face swap job. enum: [pending, completed, failed] image: type: string description: URL of the generated image, if the job is completed. security: - bearerAuth: [] paths: /undress: post: summary: Create an undress job operationId: createUndress requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/UndressRequest" responses: "201": description: Job created successfully. content: application/json: schema: $ref: "#/components/schemas/UndressResponse" "400": description: Invalid parameters or no credits. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "500": description: Internal server error. /undress/{id}: get: summary: Get the result of an undress job operationId: getUndressResult parameters: - name: id in: path required: true schema: type: string description: Identifier of the undress job. responses: "200": description: Status or result of the undress job. content: application/json: schema: $ref: "#/components/schemas/UndressResultResponse" "404": description: Job not found. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" /face_swaps: post: summary: Create a face swap job operationId: createFaceSwap requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/FaceSwapRequest" responses: "201": description: Job created successfully. content: application/json: schema: $ref: "#/components/schemas/FaceSwapResponse" "400": description: Invalid parameters or no credits. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" "500": description: Internal server error. /face_swaps/{id}: get: summary: Get the result of a face swap job operationId: getFaceSwapResult parameters: - name: id in: path required: true schema: type: string description: Identifier of the face swap job. responses: "200": description: Status or result of the face swap job. content: application/json: schema: $ref: "#/components/schemas/FaceSwapResultResponse" "404": description: Job not found. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse"