> ## 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.

# Update Product

> Update an existing product information (Step 2 - Optional)

Update an existing product's information including name, description, target audience, and media resources.

This is an optional step in the product video workflow, allowing you to refine product details before generating videos.

## Example Usage

```bash theme={null}
curl -X PUT 'https://api.jogg.ai/v2/product' \
  -H 'x-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "product_id": "NTQ0MTkzNjg",
    "name": "Updated Product Name",
    "description": "Updated product description and selling points",
    "target_audience": "Updated target audience"
  }'
```

## Related Guides

<CardGroup cols={2}>
  <Card title="URL to Video Guide" href="/api-reference/v2/API Documentation/URLtoVideo">
    Complete product video workflow
  </Card>

  <Card title="Create Product" href="/api-reference/v2/Product/CreateProduct">
    Create a new product
  </Card>
</CardGroup>


## OpenAPI

````yaml PUT /v2/product
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/product:
    put:
      tags:
        - Product
      summary: Update Product V2
      description: Update an existing product information (Step 2 - Optional)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - product_id
              properties:
                product_id:
                  type: string
                  description: Product ID from creation step
                  example: NTQ0MTkzNjg
                name:
                  type: string
                  description: Updated product name
                description:
                  type: string
                  description: Updated description
                target_audience:
                  type: string
                  description: Updated target audience
                media:
                  type: array
                  description: Updated media resources
                  items:
                    type: object
                    properties:
                      type:
                        type: integer
                        enum:
                          - 1
                          - 2
                      name:
                        type: string
                      url:
                        type: string
                      description:
                        type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseResponse'
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.

````