API 엔드포인트

커버 이미지

POST/v2/cover/generate

음악 커버 API 생성

음악 트랙에 대한 AI 커버 이미지를 생성하세요. 요청당 1크레딧을 소비합니다.

POSThttps://udioapi.pro/api/v2/cover/generate

tips

작동 방식: 작업 생성, 상태 폴링, 이미지 가져오기.

참고: URL은 14일 동안 보관됩니다.

requestHeaders

namerequireddescription
Authorizationyes인증을 위한 Bearer 토큰
Content-Typeyesapplication/json

requestBody

표지 생성 요청 본문

commonParams

paramNameparamTyperequireddescriptionexample
taskIdstringyes원곡 생성 태스크 IDgen123213213213123bksv

responses

json
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cover123123213213b880d2"
  }
}
json
{
  "code": 400,
  "msg": "Cover already exists for this task"
}
json
{
  "code": 401,
  "message": "No API key provided in Authorization header"
}
json
{
  "code": 402,
  "message": "Insufficient balance, please recharge"
}
json
{
  "code": 404,
  "message": "Original music task not found, please check your task id"
}

codeExamples

curl
curl -X POST "https://udioapi.pro/api/v2/cover/generate" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskId": "gen123213213213123bksv"
  }'
javascript
// Step 1: Generate cover
const generateResponse = await fetch('https://udioapi.pro/api/v2/cover/generate', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    taskId: 'gen123213213213123bksv'
  })
});

const generateData = await generateResponse.json();
console.log('Cover task created:', generateData.data.taskId);

// Step 2: Poll for status
const checkStatus = async (coverTaskId) => {
  const statusResponse = await fetch(
    `https://udioapi.pro/api/v2/cover/status?task_id=${coverTaskId}`,
    {
      method: 'GET',
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY'
      }
    }
  );
  return await statusResponse.json();
};

let status = await checkStatus(generateData.data.taskId);
while (status.data?.status === 'IN_PROGRESS') {
  await new Promise(resolve => setTimeout(resolve, 5000));
  status = await checkStatus(generateData.data.taskId);
}

console.log('Cover images:', status.data.images);
GET/v2/cover/status

음악 커버 상태 API

표지 생성 상태를 확인하고 이미지를 검색합니다.

GEThttps://udioapi.pro/api/v2/cover/status

requestHeaders

namerequireddescription
Authorizationyes인증을 위한 Bearer 토큰

requestParams

paramNameparamTyperequireddescription
task_idstringyes/v2/cover/generate에서 반환된 표지 작업 ID

responses

json
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cover123123213213b880d2",
    "status": "SUCCESS",
    "images": [
      "https://tempcover.storage.com/s/123.png",
      "https://tempcover.storage.com/s/456.png"
    ],
    "created_at": "2026-01-01 00:00:30"
  }
}
json
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cover123123213213b880d2",
    "status": "IN_PROGRESS",
    "images": null,
    "created_at": "2026-01-01 00:00:00"
  }
}
json
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cover123123213213b880d2",
    "status": "FAILED",
    "error": "Cover generation failed",
    "images": null,
    "created_at": "2026-01-01 00:00:00"
  }
}
json
{
  "code": 404,
  "msg": "Cover task not found",
  "data": null
}

codeExamples

curl
curl -X GET "https://udioapi.pro/api/v2/cover/status?task_id=cover123123213213b880d2" \
  -H "Authorization: Bearer YOUR_API_KEY"