Freepik Image Style Transfer API

The image-style-transfer API from Freepik — 2 operation(s) for image-style-transfer.

Operations 3

GET /v1/ai/image-style-transfer Style Transfer - List tasks #
POST /v1/ai/image-style-transfer Style Transfer - Transform image style #
GET /v1/ai/image-style-transfer/{task-id} Style Transfer - Get task status #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/freepik:freepik-image-style-transfer-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

freepik-image-style-transfer-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The Magnific API is your gateway to a vast collection of high-quality digital resources for your applications and projects. As a leading platform, it offers a wide range of graphics, including vectors, photos, illustrations, icons, PSD templates, and more, all curated by talented designers from around the world.
  title: Magnific Image Style Transfer API
  version: 1.0.0
servers:
- description: B2B API Production V1
  url: https://api.magnific.com
security:
- magnificApiKey: []
tags:
- name: image-style-transfer
paths:
  /v1/ai/image-style-transfer:
    get:
      description: Get the status of all Style Transfer tasks
      operationId: get_all_style_transfer_tasks
      responses:
        '200':
          content:
            application/json:
              examples:
                success - return all tasks:
                  $ref: '#/components/examples/200-tasks-list'
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_200_response'
          description: OK - Get the status of all Style Transfer tasks
        '400':
          $ref: '#/components/responses/400-bad-request'
        '401':
          $ref: '#/components/responses/401-unauthorized'
        '500':
          $ref: '#/components/responses/500-internal-server-error'
        '503':
          $ref: '#/components/responses/503-service-unavailable'
      summary: Style Transfer - List tasks
      tags:
      - image-style-transfer
    post:
      operationId: apply_style_transfer_to_image
      requestBody:
        content:
          application/json:
            examples:
              required-params:
                $ref: '#/components/examples/request-style-transfer-required-params'
              all-params:
                $ref: '#/components/examples/request-style-transfer-all-params'
            schema:
              $ref: '#/components/schemas/style-transfer-request-content'
        required: true
      responses:
        '200':
          content:
            application/json:
              examples:
                success - in progress task:
                  $ref: '#/components/examples/200-task-in-progress'
              schema:
                $ref: '#/components/schemas/apply_style_transfer_to_image_200_response'
          description: OK - The request has succeeded and the Style Transfer process has started.
        '400':
          $ref: '#/components/responses/400-bad-request'
        '401':
          $ref: '#/components/responses/401-unauthorized'
        '500':
          $ref: '#/components/responses/500-internal-server-error'
        '503':
          $ref: '#/components/responses/503-service-unavailable'
      summary: Style Transfer - Transform image style
      tags:
      - image-style-transfer
  /v1/ai/image-style-transfer/{task-id}:
    get:
      description: Get the status of the Style Transfer task
      operationId: get_style_transfer_task_status
      parameters:
      - description: ID of the task
        in: path
        name: task-id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                success - completed task:
                  $ref: '#/components/examples/200-task-completed'
                success - in progress task:
                  $ref: '#/components/examples/200-task-in-progress'
              schema:
                $ref: '#/components/schemas/get_style_transfer_task_status_200_response'
          description: OK - The task exists and the status is returned
        '400':
          $ref: '#/components/responses/400-bad-request'
        '401':
          $ref: '#/components/responses/401-unauthorized'
        '500':
          $ref: '#/components/responses/500-internal-server-error'
        '503':
          $ref: '#/components/responses/503-service-unavailable'
      summary: Style Transfer - Get task status
      tags:
      - image-style-transfer
components:
  responses:
    401-unauthorized:
      content:
        application/json:
          examples:
            invalid_api_key:
              summary: API key is not valid
              value:
                message: Invalid API key
            missing_api_key:
              summary: API key is not provided
              value:
                message: Missing API key
          schema:
            $ref: '#/components/schemas/inline_object'
      description: Unauthorized - The client must authenticate itself to get the requested response.
    503-service-unavailable:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/inline_object_3'
      description: Service Unavailable
    400-bad-request:
      content:
        application/json:
          examples:
            invalid_page:
              summary: Parameter 'page' is not valid
              value:
                message: Parameter 'page' must be greater than 0
            invalid_query:
              summary: Parameter 'query' is not valid
              value:
                message: Parameter 'query' must not be empty
            invalid_filter:
              summary: Parameter 'filter' is not valid
              value:
                message: Parameter 'filter' is not valid
            generic_bad_request:
              summary: Bad Request
              value:
                message: Parameter ':attribute' is not valid
          schema:
            $ref: '#/components/schemas/inline_object'
        application/problem+json:
          examples:
            invalid_page:
              summary: Parameter 'page' is not valid
              value:
                message: Validation error
                invalid_params:
                - field: page
                  reason: Parameter 'page' must be greater than 0
                - field: per_page
                  reason: Parameter 'per_page' must be greater than 0
          schema:
            $ref: '#/components/schemas/inline_object_1'
      description: Bad Request - The server could not understand the request due to invalid syntax.
    500-internal-server-error:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/inline_object_2'
      description: Internal Server Error - The server has encountered a situation it doesn't know how to handle.
  schemas:
    inline_object_1_problem_invalid_params_inner:
      properties:
        name:
          description: Name of the invalid parameter.
          example: page
          type: string
        field:
          description: Field of the invalid parameter. Mirrors `name`.
          example: page
          type: string
        reason:
          example: Parameter 'page' must be greater than 0
          type: string
      required:
      - field
      - name
      - reason
      type: object
    style-transfer-request-content:
      properties:
        image:
          description: Base64 or URL of the image to do the style transfer
          type: string
        webhook_url:
          description: 'Optional callback URL that will receive asynchronous notifications whenever the task changes status. The payload sent to this URL is the same as the corresponding GET endpoint response, but without the data field.

            '
          example: https://www.example.com/webhook
          format: uri
          type: string
        reference_image:
          description: Base64 or URL of the reference image for style transfer
          type: string
        prompt:
          description: Prompt for the AI model
          type: string
        style_strength:
          default: 100
          description: Percentage of style strength
          maximum: 100
          minimum: 0
          type: integer
        structure_strength:
          default: 50
          description: Allows to maintain the structure of the original image
          maximum: 100
          minimum: 0
          type: integer
        is_portrait:
          default: false
          description: 'Indicates whether the image should be processed as a portrait. When set to `true`, portrait-specific enhancements such as style and beautification can be applied.

            '
          type: boolean
        portrait_style:
          default: standard
          description: 'Optional setting to define the visual style applied to portrait images. Only used if `is_portrait` is `true`. The available options adjust the stylization level or aesthetic treatment of the portrait.

            '
          enum:
          - standard
          - pop
          - super_pop
          type: string
        portrait_beautifier:
          description: 'Optional setting to enable facial beautification on portrait images. Only used if `is_portrait` is `true`. Options control the intensity or type of beautification applied.

            '
          enum:
          - beautify_face
          - beautify_face_max
          type: string
        flavor:
          default: faithful
          description: Flavor of the transferring style
          enum:
          - faithful
          - gen_z
          - psychedelia
          - detaily
          - clear
          - donotstyle
          - donotstyle_sharp
          type: string
        engine:
          default: balanced
          description: Magnific model engines
          enum:
          - balanced
          - definio
          - illusio
          - 3d_cartoon
          - colorful_anime
          - caricature
          - real
          - super_real
          - softy
          type: string
        fixed_generation:
          default: false
          description: 'When this option is enabled, using the same settings will consistently produce the same image.

            Fixed generations are ideal for fine-tuning, as it allows for incremental changes to parameters (such as the prompt) to see subtle variations in the output.

            When disabled, expect each generation to introduce a degree of randomness, leading to more diverse outcomes.

            '
          type: boolean
      required:
      - image
      - reference_image
      type: object
    task:
      example:
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        status: CREATED
      properties:
        task_id:
          description: Task identifier
          format: uuid
          type: string
        status:
          description: Task status
          enum:
          - CREATED
          - IN_PROGRESS
          - COMPLETED
          - FAILED
          type: string
      required:
      - status
      - task_id
      type: object
    inline_object_1:
      properties:
        problem:
          $ref: '#/components/schemas/inline_object_1_problem'
      type: object
    inline_object_1_problem:
      properties:
        message:
          example: Validation error
          type: string
        invalid_params:
          items:
            $ref: '#/components/schemas/inline_object_1_problem_invalid_params_inner'
          type: array
      required:
      - invalid_params
      - message
      type: object
    apply_style_transfer_to_image_200_response:
      example:
        task_status: IN_PROGRESS
        generated:
        - https://openapi-generator.tech
        - https://openapi-generator.tech
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
      properties:
        task_id:
          description: Task identifier
          format: uuid
          type: string
        task_status:
          description: Task status
          enum:
          - IN_PROGRESS
          - CREATED
          - COMPLETED
          - FAILED
          type: string
        generated:
          items:
            description: URL of the generated image
            format: uri
            type: string
          type: array
      required:
      - generated
      - task_id
      - task_status
      type: object
    inline_object_2:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    inline_object:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    get_style_transfer_task_status_200_response:
      example:
        data:
          generated:
          - https://openapi-generator.tech
          - https://openapi-generator.tech
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: CREATED
      properties:
        data:
          $ref: '#/components/schemas/task-detail'
      required:
      - data
      type: object
    inline_object_3:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      type: object
    get_all_style_transfer_tasks_200_response:
      example:
        data:
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: CREATED
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: CREATED
      properties:
        data:
          items:
            $ref: '#/components/schemas/task'
          type: array
      required:
      - data
      type: object
    task-detail:
      allOf:
      - $ref: '#/components/schemas/task'
      - properties:
          generated:
            items:
              description: URL of the generated image
              format: uri
              type: string
            type: array
        required:
        - generated
        type: object
      example:
        generated:
        - https://openapi-generator.tech
        - https://openapi-generator.tech
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        status: CREATED
  examples:
    200-tasks-list:
      summary: Success - Return all tasks
      value:
        data:
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: IN_PROGRESS
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
          status: COMPLETED
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
          status: COMPLETED
        - task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
          status: CREATED
    200-task-in-progress:
      summary: Success - Task in progress
      value:
        data:
          generated: []
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: IN_PROGRESS
    request-style-transfer-all-params:
      summary: Request - Image Style Transfer all params
      value:
        image: iVBORw0KGgoAAAANSUhEUgAA...
        reference_image: iVBORw0KGgoAAAANSUhEUgAA...
        webhook_url: https://my-webhook-url.com/endpoint
        prompt: Transform the image into a modern artistic style
        style_strength: 85
        structure_strength: 60
        is_portrait: true
        portrait_style: pop
        portrait_beautifier: beautify_face_max
        flavor: gen_z
        engine: colorful_anime
        fixed_generation: true
    200-task-completed:
      summary: Success - Task completed
      value:
        data:
          generated:
          - https://ai-statics.freepik.com/completed_task_image.jpg
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: COMPLETED
    request-style-transfer-required-params:
      summary: Request - Image Style Transfer required params
      value:
        image: iVBORw0KGgoAAAANSUhEUgAA...
        reference_image: iVBORw0KGgoAAAANSUhEUgAA...
  securitySchemes:
    magnificApiKey:
      description: 'Your Magnific API key. Required for authentication. [Learn how to obtain an API key](https://docs.magnific.com/quickstart)

        '
      in: header
      name: x-magnific-api-key
      type: apiKey
x-provenance:
  method: harvested
  publisher: Freepik
  source: https://storage.googleapis.com/fc-freepik-pro-rev1-eu-api-specs/magnific-api-v1-openapi.yaml?v=46\
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)