> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ascendapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Generate muscle visualization image

> Returns an image with specified muscle groups highlighted in a single color. Ideal for simple muscle group identification and basic workout visualization.



## OpenAPI

````yaml /api-reference/muscle-visualizer/muscle-visualizer.json get /api/v1/visualize
openapi: 3.1.0
info:
  version: 1.0.0
  title: Muscle Visualizer API
  description: >-

    <div style="display: flex; gap: 2rem; align-items: center; margin: 2rem 0;">
      <div>
        <p style="margin: 0; line-height: 1.6;">
         Generate dynamic anatomical muscle visualizations for Health and fitness applications. Create customizable muscle diagrams with heatmaps, targeted highlights, and workout-specific activation patterns for both male and female body models.
        </p>
      </div>
    </div>


    ## 🎨 Visualization Modes


    <div style="display: grid; grid-template-columns: repeat(auto-fit,
    minmax(300px, 1fr)); gap: 2rem; margin: 2rem 0;">


    ### 🔥 Heatmap Visualization

    <img src="https://cdn.exercisedb.dev/exercisedb/heatmap-map.webp"
    alt="Heatmap Visualization Example" style="width: 100%; max-width: 400px;
    border-radius: 8px; margin: 1rem 0;" />


    Generate intensity-based muscle visualizations where each muscle group
    displays a unique color. Perfect for:

    - **Intensity mapping** - Show workout difficulty across muscle groups

    - **Progress tracking** - Visualize muscle development over time

    - **Fatigue mapping** - Display muscle soreness or recovery status

    - **Custom color schemes** - Assign any color to each muscle group


    ---


    ### 🎯 Muscle Group Highlighting

    <img src="https://cdn.exercisedb.dev/exercisedb/muscle-map.webp" alt="Muscle
    Group Highlighting Example" style="width: 100%; max-width: 400px;
    border-radius: 8px; margin: 1rem 0;" />


    Create simple, clear muscle diagrams with specified groups highlighted in a
    single color. Ideal for:

    - **Muscle identification** - Educational content and anatomy guides

    - **Exercise targeting** - Show which muscles an exercise works

    - **Workout planning** - Visualize muscle group focus

    - **Basic visualization** - Clean, straightforward muscle highlighting


    ---


    ### 💪 Workout Activation

    <img src="https://cdn.exercisedb.dev/exercisedb/workout-map.png"
    alt="Workout Activation Example" style="width: 100%; max-width: 400px;
    border-radius: 8px; margin: 1rem 0;" />


    Display primary and secondary muscle activation with two distinct colors.
    Perfect for:

    - **Exercise demonstrations** - Show primary vs secondary muscle engagement

    - **Workout analysis** - Visualize compound vs isolation exercises

    - **Training optimization** - Understand muscle recruitment patterns

    - **Form guides** - Illustrate proper muscle activation



    </div>


    ## ✨ Customization Features


    All visualization modes support extensive customization:


    - **🎨 Custom Colors** - Set any hex,RGB color for muscle groups

    - **🖼️ Background Control** - Customize background colors

    - **📐 Size Options** - Generate images in various dimensions

    - **📄 Format Support** - Export as PNG, JPEG, or WebP

    - **👥 Body Models** - Both male and female anatomical models

    - **🎭 View Angles** - Front and back body views


    ## 💡 Use Cases

      - **Fitness Apps** - Show users which muscles they're targeting
      - **Workout Planners** - Visualize muscle group distribution
      - **Personal Training** - Create custom exercise diagrams
      - **Physical Therapy** - Track rehabilitation progress
      - **Education** - Teach anatomy and muscle groups
      - **Health Tracking** - Monitor muscle development over time

    ## 🔗 Useful Links:


    | | |

    |---|---|

    |  Docs | [docs.ascendapi.com](https://docs.ascendapi.com) |

    |  Website | [ascendapi.com](https://ascendapi.com) |

    |  RapidAPI | [Subscribe
    Here](https://rapidapi.com/ascendapi/api/muscle-visualizer-api) |

    |  GitHub |
    [github.com/exercisedb](https://github.com/exercisedb/exercisedb-api) |



    **Built with ❤️ by [Ascend API](https://ascendapi.com)**
        
servers:
  - url: https://muscle-visualizer-api.p.rapidapi.com
    description: |-
      RapidAPI Production (X-RapidAPI-Key Required) 💼
      • Subscription-based plans
      • Basic → Pro → Ultra → Mega tiers
      • Higher rate limits & full features
      • Reliable production service
security: []
paths:
  /api/v1/visualize:
    get:
      tags:
        - Visualization Modes
      summary: Generate muscle visualization image
      description: >-
        Returns an image with specified muscle groups highlighted in a single
        color. Ideal for simple muscle group identification and basic workout
        visualization.
      operationId: v1.visualize
      parameters:
        - schema:
            type: string
            minLength: 1
            default: BICEPS,TRICEPS
            description: Comma-separated list of muscle groups to highlight
            example: BICEPS,TRICEPS
          required: true
          description: Comma-separated list of muscle groups to highlight
          name: muscles
          in: query
        - schema:
            type: string
            pattern: >-
              ^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$|^rgb\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}\s*\)$
            description: >-
              HEX or RGB color for muscle highlighting (no alpha channel
              allowed)
            example: '#D20A2E'
          required: true
          description: HEX or RGB color for muscle highlighting (no alpha channel allowed)
          name: color
          in: query
        - schema:
            type: string
            enum:
              - male
              - female
            default: male
            description: Body type to display
            example: male
          required: true
          description: Body type to display
          name: gender
          in: query
        - schema:
            type: string
            pattern: >-
              ^(white|transparent|#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})|rgb\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}\s*\))$
            default: transparent
            description: >-
              Background style: 'white', 'transparent', HEX color (e.g.,
              '#f0f0f0'), or RGB color (e.g., 'rgb(240, 240, 240)'). No alpha
              channel allowed.
            example: white
          required: true
          description: >-
            Background style: 'white', 'transparent', HEX color (e.g.,
            '#f0f0f0'), or RGB color (e.g., 'rgb(240, 240, 240)'). No alpha
            channel allowed.
          name: background
          in: query
        - schema:
            type: string
            enum:
              - small
              - medium
              - large
              - xlarge
            description: >-
              Image dimensions - small (360x360), medium (480x480), large
              (720x720), xlarge (1080x1080)
            example: medium
          required: true
          description: >-
            Image dimensions - small (360x360), medium (480x480), large
            (720x720), xlarge (1080x1080)
          name: size
          in: query
        - schema:
            type: string
            enum:
              - jpeg
              - png
              - webp
            description: Output image format
            example: jpeg
          required: true
          description: Output image format
          name: format
          in: query
      responses:
        '200':
          description: Successfully generated muscle visualization image
          content:
            image/png:
              schema:
                type: string
                format: binary
            image/webp:
              schema:
                type: string
                format: binary
            image/jpeg:
              schema:
                type: string
                format: binary
        '400':
          description: >-
            The server cannot or will not process the request due to something
            that is perceived to be a client error (e.g., malformed request
            syntax, invalid request message framing, or deceptive request
            routing).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBadRequest'
        '401':
          description: >-
            Although the HTTP standard specifies "unauthorized", semantically
            this response means "unauthenticated". That is, the client must
            authenticate itself to get the requested response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrUnauthorized'
        '403':
          description: >-
            The client does not have access rights to the content; that is, it
            is unauthorized, so the server is refusing to give the requested
            resource. Unlike 401 Unauthorized, the client's identity is known to
            the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrForbidden'
        '404':
          description: >-
            The server cannot find the requested resource. In the browser, this
            means the URL is not recognized. In an API, this can also mean that
            the endpoint is valid but the resource itself does not exist.
            Servers may also send this response instead of 403 Forbidden to hide
            the existence of a resource from an unauthorized client. This
            response code is probably the most well known due to its frequent
            occurrence on the web.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrNotFound'
        '405':
          description: >-
            The request method is not supported by the target resource. The
            server must generate an Allow header field in a 405 response
            containing a list of the target resource's currently supported
            methods.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrMethodNotAllowed'
        '409':
          description: >-
            This response is sent when a request conflicts with the current
            state of the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrConflict'
        '412':
          description: >-
            The requested operation cannot be completed because certain
            conditions were not met. This typically occurs when a required
            resource state or version check fails.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrPreconditionFailed'
        '429':
          description: >-
            The user has sent too many requests in a given amount of time ("rate
            limiting")
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrTooManyRequests'
        '500':
          description: >-
            The server has encountered a situation it does not know how to
            handle.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrInternalServerError'
      security:
        - RapidAPIKey: []
components:
  schemas:
    ErrBadRequest:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - BAD_REQUEST
              description: A machine readable error code.
              example: BAD_REQUEST
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/BAD_REQUEST
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrUnauthorized:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - UNAUTHORIZED
              description: A machine readable error code.
              example: UNAUTHORIZED
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/UNAUTHORIZED
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrForbidden:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - FORBIDDEN
              description: A machine readable error code.
              example: FORBIDDEN
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/FORBIDDEN
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrNotFound:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - NOT_FOUND
              description: A machine readable error code.
              example: NOT_FOUND
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/NOT_FOUND
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrMethodNotAllowed:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - METHOD_NOT_ALLOWED
              description: A machine readable error code.
              example: METHOD_NOT_ALLOWED
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/METHOD_NOT_ALLOWED
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrConflict:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - CONFLICT
              description: A machine readable error code.
              example: CONFLICT
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/CONFLICT
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrPreconditionFailed:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - PRECONDITION_FAILED
              description: A machine readable error code.
              example: PRECONDITION_FAILED
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/PRECONDITION_FAILED
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrTooManyRequests:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - TOO_MANY_REQUESTS
              description: A machine readable error code.
              example: TOO_MANY_REQUESTS
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/TOO_MANY_REQUESTS
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
    ErrInternalServerError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - INTERNAL_SERVER_ERROR
              description: A machine readable error code.
              example: INTERNAL_SERVER_ERROR
            docs:
              type: string
              description: >-
                A link to our documentation with more details about this error
                code
              example: https://docs.exercisedb.dev/errors/code/INTERNAL_SERVER_ERROR
            message:
              type: string
              description: A human readable explanation of what went wrong
            requestId:
              type: string
              description: Please always include the requestId in your error report
              example: req_12345
          required:
            - code
            - docs
            - message
            - requestId
      required:
        - error
  securitySchemes:
    RapidAPIKey:
      type: apiKey
      in: header
      name: X-RapidAPI-Key
      description: Enter your RapidAPI key in the X-RapidAPI-Key header.

````