curl --request POST \
--url https://api.evolink.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "doubao-seedream-5.5-layerize",
"image_urls": [
"https://example.com/poster.png"
],
"quality": "auto",
"output_format": "png",
"n": 30,
"model_params": {
"text_recognition": true
}
}
'
{
"created": 1757165031,
"id": "task-unified-1793612934-seedream55layerize",
"model": "doubao-seedream-5.5-layerize",
"object": "image.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 150
},
"type": "image",
"usage": {
"billing_rule": "per_image",
"credits_reserved": 55.624,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: doubao-seedream-5.5-layerize",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Seedream 5.5
Seedream 5.5 레이어 분해
- Seedream 5.5 레이어 분해 (doubao-seedream-5.5-layerize)는 이미지 한 장을 베이스 이미지와 여러 독립 레이어로 분리합니다
- 입력 이미지는
1장입니다.prompt는 선택 사항이며 생략하면 주요 요소를 자동으로 식별해 분리합니다 n으로 최대 출력 수를 지정하고model_params.text_recognition으로 문자 인식을 활성화할 수 있습니다- 비동기 처리입니다. 반환된 작업 ID로 작업 상태를 확인하세요
- 생성된 이미지 링크는 24시간 동안 유효하며, 즉시 저장해 주세요
출력 안내
output_format은 베이스 이미지 형식을 지정합니다. 독립 레이어는 항상 투명 채널이 있는 PNG로 출력됩니다result_data내 각 이미지에는z_index(쌓임 순서: 베이스 이미지는0, 레이어는1부터 증가)와background(베이스 이미지는opaque, 레이어는transparent)가 포함됩니다. 레이어에는bounding_box(absolute는 베이스 이미지 좌표계의 픽셀 좌표,normalized는0~1000범위),name,description도 포함됩니다- 레이어 하나라도 실패하면 전체 작업이 실패하고 전액 환불됩니다. 부분 성공 결과는 반환되지 않습니다
과금 안내
- 베이스 이미지와 각 레이어는 개별 이미지로 과금됩니다. 입력 이미지는 별도로 과금됩니다
- 작업 생성 시 입력 이미지
1장과 최대n장의 출력 이미지에 해당하는 크레딧을 사전 차감합니다. 완료 후 실제 출력 수로 정산하며 사용하지 않은 크레딧은 자동으로 반환됩니다
POST
/
v1
/
images
/
generations
curl --request POST \
--url https://api.evolink.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "doubao-seedream-5.5-layerize",
"image_urls": [
"https://example.com/poster.png"
],
"quality": "auto",
"output_format": "png",
"n": 30,
"model_params": {
"text_recognition": true
}
}
'
{
"created": 1757165031,
"id": "task-unified-1793612934-seedream55layerize",
"model": "doubao-seedream-5.5-layerize",
"object": "image.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 150
},
"type": "image",
"usage": {
"billing_rule": "per_image",
"credits_reserved": 55.624,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: doubao-seedream-5.5-layerize",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}인증
##모든 API는 Bearer Token 인증이 필요합니다##
API Key 받기:
API Key 관리 페이지를 방문하여 API Key를 받으세요
요청 헤더에 추가:
Authorization: Bearer YOUR_API_KEY
본문
application/json
분해할 이미지 URL (필수)
참고:
- 정확히
1장이 필요하며, 누락하거나2장 이상을 전달하면 오류가 발생합니다 - 지원 형식:
.png,.jpeg,.jpg(일반 생성보다 엄격하며 webp 등은 거부됩니다) - 이미지 크기: 최대
30MB - 총 픽셀 수:
[262144, 6000×6000], 즉 최소512×512(일반 생성보다 하한이 높음) - 가로세로 비율(가로/세로) 범위:
[1/16, 16] - 이미지 URL은 서버에서 직접 접근할 수 있거나 접근 시 바로 다운로드가 시작되어야 합니다(일반적으로
.png,.jpg같은 이미지 확장자로 끝납니다) - 입력 이미지는 별도로 과금됩니다
Required array length:
1 element예시:
["https://example.com/poster.png"]
출력 해상도입니다. 기본값은 auto입니다.
옵션: auto, 1K, 1.5K, 2K
설명:
- 위의 해상도 옵션만 지원합니다. 비율(
16:9등)이나 픽셀 크기(2048x2048등)를 전달하면 오류가 반환됩니다 auto는 출력이 입력 이미지를 따른다는 뜻입니다. 원본 크기가[921600, 4624220]픽셀 범위 안이면 그대로, 1K 미만이면 1K로, 2K를 초과하면 2K로 출력됩니다- 각 레이어는 원본 이미지에서의 가로세로 비율을 각각 유지하며, 베이스 이미지의 비율은 입력 이미지와 같습니다
사용 가능한 옵션:
auto, 1K, 1.5K, 2K 예시:
"auto"
작업 완료 후 HTTPS 콜백 주소
콜백 타이밍:
- 작업이 완료, 실패 또는 취소될 때 트리거됨
- 과금 확인 완료 후 전송
보안 제한:
- HTTPS 프로토콜만 지원
- 내부 IP 주소로의 콜백 금지 (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x 등)
- URL 길이는
2048자를 초과할 수 없음
콜백 메커니즘:
- 타임아웃:
10초 - 실패 시 최대
3회 재시도 (1초/2초/4초 후 재시도) - 콜백 응답 본문 형식은 작업 조회 API 응답 형식과 동일
- 콜백 주소가 2xx 상태 코드를 반환하면 성공으로 간주, 다른 상태 코드는 재시도를 트리거
예시:
"https://your-domain.com/webhooks/image-task-completed"
응답
이미지 생성 작업이 성공적으로 생성되었습니다