빠른 시작 가이드로 이매진 API 작동 방식을 배우고 워크플로를 커스터마이징하세요.
온보딩 완료하기
이 빠른 시작 가이드를 사용하기 전에 이매진에 가입하고, 환경을 설정하고, AI 프로필을 선택하는 등 몇 가지 단계를 완료해야 해요. 온보딩을 참고하세요.
코딩을 최소화하면서 이매진 API를 사용하고 싶다면 Python SDK를 확인해보세요.
1. 사용 가능한 AI 프로필 목록 가져오기
AI 프로필과 해당 키 목록을 가져오세요. 이 엔드포인트의 API 레퍼런스 문서 는 여기 있어요.
GET /v1/profiles/
응답 예시
응답에는 사용 가능한 AI 프로필이 포함돼요. 각 AI 프로필에는 고유 식별자인 profile_key가 있어요. 프로젝트의 사진을 편집하려면 이 profile_key가 필요해요.
{
"data": {
"profiles": [
{
"profile_key": <개인 AI 프로필의 프로필 키>,
"profile_name": "결혼식",
"profile_type": "Personal",
"image_type": "RAW"
},
{
"profile_key": 14715,
"profile_name": "LOVE & LIGHT",
"profile_type": "Talent",
"image_type": "RAW"
},
{
"profile_key": 163322,
"profile_name": "ELEGANT HOME",
"profile_type": "Talent",
"image_type": "RAW"
}
]
}
}
2. API 없이 사진 컬링하기
편집을 위해 업로드하기 전에 사진을 컬링하세요. 컬링은 이매진 API에 포함되지 않아요.
3. 프로젝트 만들고 프로젝트 ID 받기
촬영마다 프로젝트를 만드는 걸 추천해요. 프로젝트는 사진 편집에 선택한 AI 프로필과 함께 사진을 정리해줘요. API 레퍼런스 문서 엔드포인트 참고.
POST /v1/projects/
응답 예시
응답은 이 프로젝트를 식별하는 데 사용되는 project_uuid야. 사진을 JPEG로 내보낼 때까지 이 project_uuid를 사용해.
{
"data": {
"project_uuid": "<project_uuid>"
}
}
4. 사진 업로드를 위한 임시 업로드 링크 만들기
각 사진을 업로드하려면 임시 링크가 필요해. 요청에서 files_list 파라미터에 업로드할 사진의 파일명을 포함시켜. list 형식을 사용해. 이 엔드포인트의 API 참고 문서는 여기 있어.
POST /v1/projects/<PROJECT_UUID>/get_temporary_upload_links
요청 예시
curl --location 'https://api.dev.imagen-ai.com/v1/projects/<project_uuid>/get_temporary_upload_links' \
--header 'x-api-key: <api_key>' \
--header 'Content-Type: application/json' \
--data '{
“files_list”: [
{“file_name”: “922A4846.CR2”},
{“file_name”: “922A4832.CR2”},
{“file_name”: “922A4818.CR2”},
{“file_name”: “922A4809.CR2”}
]
}'
응답 예시
응답에는 AWS의 Imagen S3 버킷에 있는 각 사진의 임시 링크가 포함돼요. 이 링크는 AWS 사전 서명된 URL이에요.
{
"data": {
"files_list": [
{
"file_name": "922A4846.raw",
"upload_link": "<presigned URL for 922A4846.raw>"
},
{
"file_name": "922A4832.raw",
"upload_link": "<presigned URL for 922A4832.raw>"
},
{
"file_name": "922A4818.raw",
"upload_link": "<presigned URL for 922A4818.raw>"
},
{
"file_name": "922A4809.raw",
"upload_link": "<presigned URL for 922A4809.raw>"
}
]
}
}
5. 각 사진을 임시 업로드 링크에 업로드하기
AWS의 Imagen S3 버킷에 PUT 요청 으로 사진을 업로드하세요. 이전 단계의 응답에서 받은 임시 업로드 링크를 사용하세요.
Postman에서 테스트하기
- 헤더에서 Content-Type을 비활성화하세요.
- 쿼리 파라미터에 Content-Type을 보내지 마세요.
코드의 요청 헤더 요구사항
헤더에 Content-Type을 추가하고 빈 문자열("")을 값으로 설정하세요.
6. 프로젝트의 사진 편집하기
사진을 편집하기 전에 필요한 것:
- project_uuid
- 값profile_key. 응답 확인: 1. 사용 가능한 AI 프로필 목록 가져오기 에서 profile_key를 확인하세요.
- AI 도구. Imagen AI 도구에서 프로젝트에 맞는 도구를 선택하세요.
- (선택사항) 콜백 URL. [상태 메시지를 받기 위한 콜백 URL 추가하기] 참고
이 엔드포인트의 API 레퍼런스 문서를 확인하세요.
POST /v1/projects/{project_uuid}/edit
요청 예시
{
"profile_key": <profile key>,
"hdr_merge": true,
"photography_type": "REAL_ESTATE",
"callback_url": "string",
"perspective_correction": true,
"sky_replacement": true,
"sky_replacement_template_id": “2”
}
응답 예시
프로젝트가 성공적으로 편집되었다는 메시지가 응답으로 전송돼요. 오류가 발생하면 이메일로 고객 성공 팀에 문의하세요.
{“project_uuid”: “<프로젝트 UUID>”, “status”: “Failed/Completed/Pending”, “action”: “edit/export”“}
상태 메시지를 받으려면 콜백 URL 추가하기
callback_url은 이매진이 상태 메시지를 보낼 수 있는 POST 엔드포인트예요. 이 파라미터는 선택 사항이에요. 사용하면 편집 상태를 확인할 필요가 없어요. 이 엔드포인트는 이매진에 열려 있어야 해요.
요청에서 전송될 수 있는 상태는 다음과 같아요:
- Failed: 이메일로 고객 성공 팀에 문의하세요.
-
Completed: 이매진 API가 사진 편집을 완료했어요. 다음 중 하나를 계속 진행하세요:
-
편집된 사진이나 XMP를 다운로드할 임시 다운로드 링크 받기 편집을 비틀고 편집 소프트웨어로 사진을 내보내세요.
또는 - 전달용 사진 내보내기 고객용 JPEG 파일을 만들어요.
-
편집된 사진이나 XMP를 다운로드할 임시 다운로드 링크 받기 편집을 비틀고 편집 소프트웨어로 사진을 내보내세요.
응답 예시
{“project_uuid”: “<프로젝트 UUID>”, “status”: “Failed/Completed”, “action”: “edit/export”“}
7. 편집 상태 확인하기
편집 요청에 콜백 URL을 추가하지 않았다면, 편집 프로세스의 현재 상태를 확인하세요. 상태가 완료됨이 될 때까지 롱 폴링으로 이 엔드포인트를 계속 호출하세요.
이 엔드포인트의 API 문서는 여기 있어요.
GET /v1/projects/<PROJECT_UUID>/edit/status
응답의 상태는 다음과 같아요:
- 대기 중: 편집 프로세스가 아직 시작되지 않았어요. 편집이 시작되면 상태가 진행 중으로 바뀌어요.
- 진행 중: Imagen API가 사진을 편집하고 있어요.
- 실패: 이메일 고객 성공 팀에 문의하세요.
-
완료됨: 이매진 API가 사진 편집을 완료했어요. 다음 중 하나를 진행하세요:
-
임시 다운로드 링크를 받아 편집된 사진이나 XMP를 다운로드하세요 편집을 비틀고 편집 소프트웨어로 사진을 내보내세요.
또는 - 전달용 사진 내보내기 고객용 JPEG를 만드세요.
-
임시 다운로드 링크를 받아 편집된 사진이나 XMP를 다운로드하세요 편집을 비틀고 편집 소프트웨어로 사진을 내보내세요.
8. 임시 다운로드 링크를 받아 편집된 사진이나 XMP 다운로드하기
완료됨 상태를 받은 후, 임시 다운로드 링크를 받아 편집된 사진을 다운로드하세요.
이 엔드포인트의 API 문서 참고는 여기 있어요.
GET /v1/projects/<PROJECT_UUID>/edit/get_temporary_download_links
응답 예시
응답에는 AWS의 이매진 S3 버킷으로 연결되는 각 사진의 임시 링크가 포함돼요. 이 링크는 AWS 사전 서명된 URL이에요.
{
"data": {
"files_list": [
{
"file_name": "922A4846.DNG",
"download_link": "<922A4846.DNG의 사전 서명된 URL>"
},
{
"file_name": "922A4832.DNG",
"download_link": "<922A4832.DNG의 사전 서명된 URL>"
},
{
"file_name": "922A4818.DNG",
"download_link": "<922A4818.DNG의 사전 서명된 URL>"
},
{
"file_name": "922A4809.DNG",
"download_link": "<922A4809.DNG의 사전 서명된 URL>"
}
]
}
}
9. 편집된 사진을 로컬로 다운로드
이매진이 편집된 파일을 반환하면 다음과 같은 형식으로 제공돼요:
| 편집 전 파일 형식 | 편집 후 반환되는 파일 형식 |
| RAW |
XMP 참고: HDR 병합으로 사진을 편집할 때, 편집 전 파일 형식이 RAW였더라도 반환되는 형식은 항상 DNG입니다. |
| RAW + DNG | XMP가 포함된 DNG |
| DNG | XMP가 포함된 DNG |
| JPEG | XMP가 포함된 JPEG |
AWS의 이매진 S3 버킷에서 사진을 다운로드하세요. 이전 단계의 응답에서 받은 임시 다운로드 링크를 사용하면 됩니다. 원하는 방법을 사용하세요. Python 샘플 코드는 Github의 api_client.py를 참고하세요. 이매진 API 프로젝트에서 확인할 수 있습니다.
Adobe 편집 소프트웨어에서 편집 내용을 검토하세요. 컴퓨터의 기본값 사진 뷰어로 열면 편집 내용이 보이지 않습니다. 도움이 필요하면 다음을 참고하세요:
- 라이트룸 클래식: 편집 내용을 다운로드했는데 사진이 편집되지 않았어요
- 라이트룸: 편집 내용을 다운로드했는데 사진이 편집되지 않았어요
- 포토샵: 편집 내용을 다운로드했는데 사진이 편집되지 않았어요
- 브리지: 편집 내용을 다운로드했는데 사진이 편집되지 않았어요
10. 선택사항: 최종 JPEG 내보내기
이매진 API는 프로젝트의 모든 사진을 JPEG 형식으로 내보냅니다. 이 단계는 선택사항입니다. 일부 사진작가는 편집 내용을 비틀기하고 편집 소프트웨어로 내보내기합니다. 최종 JPEG를 내보내기한 후 전달하거나 갤러리에 업로드하세요.
1. 프로젝트의 사진 내보내기
POST /v1/projects/<PROJECT_UUID>/export
이 엔드포인트의 API 레퍼런스 문서를 확인하세요.
응답에는 project_uuid와 내보내기 성공 메시지가 포함됩니다. 오류가 발생하면 고객 성공 팀에 이메일을 보내주세요.
2. 내보내기 상태 확인
편집 요청에 콜백 URL을 추가하지 않았다면 내보내기 상태를 확인하세요.
GET /v1/projects/<PROJECT_UUID>/export/status.
이 엔드포인트의 API 레퍼런스 문서를 확인하세요.
응답에는 내보내기 상태가 포함됩니다. 가능한 상태는 다음과 같습니다:
- 진행 중: 이매진 API가 사진을 편집하는 중입니다.
- 실패: 고객 성공 팀에 이메일을 보내주세요.
- 완료: 이매진 API가 사진을 JPEG로 내보내기를 완료했습니다.
3. 최종 JPEG 사진을 다운로드할 임시 다운로드 링크 받기
내보내기 상태가 COMPLETED로 반환되면 임시 다운로드 링크를 받으세요.
GET /v1/projects/<PROJECT_UUID>/export/get_temporary_download_links
요청에 다운로드할 내보낸 사진을 files_list 파라미터에 포함하세요. list 형식을 사용하세요.
이 엔드포인트의 API 레퍼런스 문서는 여기 있어요.
응답 예시
응답에는 AWS의 Imagen S3 버킷으로 연결되는 각 사진의 임시 링크가 포함돼요. 이 링크는 AWS 사전 서명된 URL이에요.
{
"data": {
"files_list": [
{
"file_name": "922A4846.JPG",
"download_link": "<presigned URL for 922A4846.JPG>"
},
{
"file_name": "922A4832.JPG",
"download_link": "<presigned URL for 922A4832.JPG>"
},
{
"file_name": "922A4818.JPG",
"download_link": "<presigned URL for 922A4818.JPG>"
},
{
"file_name": "922A4809.JPG",
"download_link": "<presigned URL for 922A4809.JPG>"
}
]
}
}
4. 최종 JPEG 사진을 로컬에 다운로드하기
AWS의 이매진 S3 버킷에서 이전 단계의 응답에 포함된 임시 다운로드 링크로 사진을 다운로드하세요. 원하는 방법을 사용하면 됩니다. Python 샘플 코드는 Github의 api_client.py 파일(이매진 API 프로젝트)을 참고하세요.