Resemble AI subpackage_watermark API

The subpackage_watermark API from Resemble AI — 4 operation(s) for subpackage_watermark.

OpenAPI Specification

resemble-ai-subpackage-watermark-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API Reference subpackage_account subpackage_watermark API
  version: 1.0.0
servers:
- url: https://f.cluster.resemble.ai
- url: https://app.resemble.ai/api/v2
tags:
- name: subpackage_watermark
paths:
  /watermark/apply:
    post:
      operationId: apply-watermark
      summary: Apply watermark
      description: 'Apply a watermark to an audio, image, or video file. The media type is automatically detected from the file content. Use the `Prefer: wait` header for synchronous processing.'
      tags:
      - subpackage_watermark
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      - name: Prefer
        in: header
        description: When set to "wait", the API processes synchronously and returns the completed result.
        required: false
        schema:
          $ref: '#/components/schemas/WatermarkApplyPostParametersPrefer'
      responses:
        '200':
          description: Watermark job created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Watermark_applyWatermark_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                  description: HTTPS URL to the media file (audio, image, or video).
                strength:
                  type: number
                  format: double
                  default: 0.2
                  description: Watermark strength for image/video. Ignored for audio.
                custom_message:
                  type: string
                  default: resembleai
                  description: Custom message to embed for image/video. Ignored for audio.
              required:
              - url
  /watermark/apply/{uuid}/result:
    get:
      operationId: get-watermark-apply-result
      summary: Get watermark apply result
      description: Retrieve the result of a watermark apply job.
      tags:
      - subpackage_watermark
      parameters:
      - name: uuid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Apply result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Watermark_getWatermarkApplyResult_Response_200'
  /watermark/detect:
    post:
      operationId: detect-watermark
      summary: Detect watermark
      description: 'Detect a watermark in an audio, image, or video file. The media type is automatically detected from the file content. Use the `Prefer: wait` header for synchronous processing.'
      tags:
      - subpackage_watermark
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      - name: Prefer
        in: header
        description: When set to "wait", the API processes synchronously and returns the completed result with metrics.
        required: false
        schema:
          $ref: '#/components/schemas/WatermarkDetectPostParametersPrefer'
      responses:
        '200':
          description: Detection job created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Watermark_detectWatermark_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                  description: HTTPS URL to the media file (audio, image, or video).
                custom_message:
                  type: string
                  default: resembleai
                  description: Custom message used during encoding for image/video. Ignored for audio.
              required:
              - url
  /watermark/detect/{uuid}/result:
    get:
      operationId: get-watermark-detection-result
      summary: Get watermark detection result
      description: Retrieve the result of a watermark detection.
      tags:
      - subpackage_watermark
      parameters:
      - name: uuid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Detection result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Watermark_getWatermarkDetectionResult_Response_200'
components:
  schemas:
    WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItem:
      type: object
      properties:
        uuid:
          type: string
        media_type:
          $ref: '#/components/schemas/WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType'
        source_media_url:
          type: string
          format: uri
        watermarked_media:
          type:
          - string
          - 'null'
          format: uri
          description: Signed URL to the watermarked file. Null while processing.
        metrics:
          oneOf:
          - $ref: '#/components/schemas/WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics'
          - type: 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      title: WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItem
    WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType:
      type: string
      enum:
      - audio
      - image
      - video
      title: WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType
    WatermarkDetectPostResponsesContentApplicationJsonSchemaItem:
      type: object
      properties:
        uuid:
          type: string
        media_type:
          $ref: '#/components/schemas/WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMediaType'
        source_media_url:
          type: string
          format: uri
        metrics:
          oneOf:
          - $ref: '#/components/schemas/WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMetrics'
          - type: 'null'
          description: Detection results. Null while processing.
        watermarked_media:
          type:
          - string
          - 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      title: WatermarkDetectPostResponsesContentApplicationJsonSchemaItem
    WatermarkApplyPostResponsesContentApplicationJsonSchemaItem:
      type: object
      properties:
        uuid:
          type: string
        media_type:
          $ref: '#/components/schemas/WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMediaType'
          description: Detected media type of the source file.
        source_media_url:
          type: string
          format: uri
          description: The original source URL provided in the request.
        watermarked_media:
          type:
          - string
          - 'null'
          format: uri
          description: Signed URL to the watermarked file. Populated when processing is complete.
        metrics:
          oneOf:
          - $ref: '#/components/schemas/WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMetrics'
          - type: 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      title: WatermarkApplyPostResponsesContentApplicationJsonSchemaItem
    WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMetrics:
      type: object
      properties: {}
      description: Detection results. Null while processing.
      title: WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMetrics
    Watermark_detectWatermark_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/WatermarkDetectPostResponsesContentApplicationJsonSchemaItem'
      title: Watermark_detectWatermark_Response_200
    WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetricsHasWatermark:
      oneOf:
      - type: object
        additionalProperties:
          type: boolean
      - type: boolean
      title: WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetricsHasWatermark
    WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType:
      type: string
      enum:
      - audio
      - image
      - video
      title: WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType
    Watermark_applyWatermark_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/WatermarkApplyPostResponsesContentApplicationJsonSchemaItem'
      title: Watermark_applyWatermark_Response_200
    WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMediaType:
      type: string
      enum:
      - audio
      - image
      - video
      title: WatermarkDetectPostResponsesContentApplicationJsonSchemaItemMediaType
    WatermarkDetectPostParametersPrefer:
      type: string
      enum:
      - wait
      title: WatermarkDetectPostParametersPrefer
    WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItem:
      type: object
      properties:
        uuid:
          type: string
        media_type:
          $ref: '#/components/schemas/WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMediaType'
        source_media_url:
          type: string
          format: uri
        metrics:
          oneOf:
          - $ref: '#/components/schemas/WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics'
          - type: 'null'
          description: Detection results. For audio, has_watermark is a per-channel object. For image/video, has_watermark is a boolean.
        watermarked_media:
          type:
          - string
          - 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      title: WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItem
    WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMetrics:
      type: object
      properties: {}
      title: WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMetrics
    Watermark_getWatermarkDetectionResult_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItem'
      title: Watermark_getWatermarkDetectionResult_Response_200
    WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics:
      type: object
      properties:
        has_watermark:
          $ref: '#/components/schemas/WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetricsHasWatermark'
      description: Detection results. For audio, has_watermark is a per-channel object. For image/video, has_watermark is a boolean.
      title: WatermarkDetectUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics
    WatermarkApplyPostParametersPrefer:
      type: string
      enum:
      - wait
      title: WatermarkApplyPostParametersPrefer
    WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics:
      type: object
      properties: {}
      title: WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItemMetrics
    WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMediaType:
      type: string
      enum:
      - audio
      - image
      - video
      description: Detected media type of the source file.
      title: WatermarkApplyPostResponsesContentApplicationJsonSchemaItemMediaType
    Watermark_getWatermarkApplyResult_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/WatermarkApplyUuidResultGetResponsesContentApplicationJsonSchemaItem'
      title: Watermark_getWatermarkApplyResult_Response_200
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API token from https://app.resemble.ai/account/api