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

# Add Motion to Photo Avatar

> Add motion to a photo avatar to make it animated

Add motion to a photo avatar to make it animated.

## Example Usage

```bash theme={null}
curl --request POST \
  --url 'https://api.jogg.ai/v2/photo_avatar/add_motion' \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "image_url": "https://res.jogg.ai/photo.jpg",
    "name": "My Photo Avatar",
    "voice_id": "en-US-ChristopherNeural",
    "model": "2.0"
  }'
```

## Related Guides

<CardGroup cols={2}>
  <Card title="Generate Photo Avatar" href="/api-reference/v2/Avatar/PhotoAvatarGenerate">
    Generate photo avatar first
  </Card>

  <Card title="Check Motion Status" href="/api-reference/v2/Avatar/MotionStatusCheck">
    Check motion generation status
  </Card>
</CardGroup>


## OpenAPI

````yaml POST /v2/photo_avatar/add_motion
openapi: 3.0.1
info:
  title: JoggAI OpenAPI v2
  description: >
    JoggAI OpenAPI v2 provides a comprehensive suite of endpoints for creating
    and managing AI-powered video content.


    ## Authentication

    All API requests require authentication using an API key provided in the
    `x-api-key` header.


    ## Base URL

    Production: https://api.jogg.ai/v2


    ## Rate Limiting

    API calls are subject to rate limiting based on your subscription plan.


    ## Error Handling

    All endpoints return standard HTTP status codes along with detailed error
    messages in the response body.
  version: 2.0.0
  license:
    name: MIT
servers:
  - url: https://api.jogg.ai
    description: Production server
security:
  - apiKeyAuth: []
tags:
  - name: Video
    description: Video creation and management operations
  - name: Avatar
    description: Avatar management and creation operations
  - name: Voice
    description: Voice and timbre management operations
  - name: Asset
    description: Asset management including music, scripts, and uploads
  - name: Template
    description: Template management operations
  - name: Product
    description: Product management operations
  - name: User
    description: User account operations
  - name: Webhook
    description: Webhook endpoint management for event notifications
paths:
  /v2/photo_avatar/add_motion:
    post:
      tags:
        - Avatar
      summary: Add Motion to Photo Avatar
      description: Add motion to a photo avatar to make it animated
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - image_url
                - name
                - voice_id
                - model
              properties:
                image_url:
                  type: string
                  description: Photo avatar image URL
                  format: uri
                  example: https://res.jogg.ai/photo.jpg
                photo_id:
                  type: string
                  description: Photo ID from photo generation
                name:
                  type: string
                  description: Avatar name
                  example: My Photo Avatar
                voice_id:
                  type: string
                  description: Voice ID to associate with avatar
                  example: en-US-ChristopherNeural
                model:
                  type: string
                  description: Motion model version
                  enum:
                    - '1.0'
                    - '2.0'
                    - 2.0-Pro
                    - '3.0'
                  example: '2.0'
                description:
                  type: string
                  description: Avatar description
                welcome_msg:
                  type: string
                  description: Welcome message for the avatar
                  example: Hello, welcome!
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/BaseResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          avatar_id:
                            type: integer
                            description: Avatar ID
                            example: 123
                          motion_id:
                            type: string
                            description: Motion ID for tracking generation status
                            example: motion_456
                          status:
                            type: string
                            description: Motion generation status
                            enum:
                              - pending
                              - processing
                              - completed
                              - failed
                            example: processing
              example:
                rid: 7abb75ebf2523038874d66cf5dfb2b02
                code: 0
                msg: success
                data:
                  avatar_id: 123
                  motion_id: motion_456
                  status: processing
components:
  schemas:
    BaseResponse:
      type: object
      required:
        - code
        - msg
      properties:
        code:
          type: integer
          description: |
            Business status code:
            * 0 - Success
            * 10104 - Record not found
            * 10105 - Invalid API key
            * 18020 - Insufficient credit
            * 18025 - No permission to call APIs
            * 40000 - Parameter error
            * 50000 - System error
          example: 0
        msg:
          type: string
          description: Response message
          example: Success
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Obtain your key from the JoggAI dashboard.

````