파일
이미지 편집, 사진으로 영상 만들기, 음성 인식처럼 파일이 필요한 엔드포인트는 파일을 https 링크로 받아요. 공개 링크가 없는 내 파일은 먼저 데브다이브 드라이브에 올리고, 받은 링크를 넘기세요.
| 하는 일 | 엔드포인트 |
|---|---|
| 파일 올리기 | POST /v1/files |
| 드라이브의 파일 목록 | GET /v1/files |
파일 올리기
POST /v1/files
두 가지 방법이 있어요. 성공하면 201 Created와 파일 정보가 와요.
내 컴퓨터의 파일: multipart/form-data의 file 필드로 보내요.
curl https://api.devdive.ai/v1/files \
-H "Authorization: Bearer $DEVDIVE_API_KEY" \
-F "file=@./portrait.png"
인터넷에 있는 파일: JSON으로 링크를 보내면 데브다이브가 가져와 드라이브에 저장해요.
| 필드 | 형식 | 기본값 | 설명 |
|---|---|---|---|
url | 링크 | 필수 | 가져올 파일의 https 링크 |
file_name | 문자열 | 링크의 파일 이름 | 드라이브에 보일 이름. 뒤에 겹치지 않게 짧은 문자가 붙고, 확장자는 실제 내용에 맞춰져요 |
curl https://api.devdive.ai/v1/files \
-H "Authorization: Bearer $DEVDIVE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/photo.jpg", "file_name": "제품사진.jpg"}'
응답:
{
"id": "4b7e2c9a-5d1f-4e3b-8a6c-2f9d0e1b7c4a.png",
"object": "file",
"name": "portrait-1a2b3c4d.png",
"url": "https://api.devdive.ai/media/…/portrait-1a2b3c4d.png",
"content_type": "image/png",
"size": 482113,
"created_at": null,
"url_expires_in_days": 3
}
받은 url을 다른 엔드포인트의 image_url, image_urls, video_url, audio_url, file_url 같은 입력에
그대로 넣으세요.
Python
import os
import requests
API = "https://api.devdive.ai"
HEADERS = {"Authorization": f"Bearer {os.environ['DEVDIVE_API_KEY']}"}
with open("portrait.png", "rb") as f:
uploaded = requests.post(f"{API}/v1/files", headers=HEADERS,
files={"file": ("portrait.png", f, "image/png")}, timeout=120).json()
job = requests.post(f"{API}/v1/videos", headers=HEADERS, timeout=120, json={
"model": "devdive-video-happyhorse-i2v",
"prompt": "인물이 고개를 돌려 카메라를 보고 웃는다",
"image_url": uploaded["url"],
}).json()
올릴 수 있는 파일
| 종류 | 형식 |
|---|---|
| 이미지 | PNG, JPEG, GIF, WebP, HEIC·HEIF, AVIF |
| 영상 | MP4, MOV, WebM, MKV, AVI, 3GP |
| 오디오 | MP3, WAV, M4A, AAC, OGG, FLAC |
| 문서 |
- 파일 하나에 최대 50MB, 계정당 분당 20개까지 올릴 수 있어요.
- 형식은 파일 이름이 아니라 내용으로 확인해요. 이름만 바꾼 실행 파일, SVG·HTML, 스크립트가 든 PDF는 올라가지 않아요.
- 올린 파일은 숨은 내용을 걸러 내고 다시 만들어 저장해요. 사진의 위치 정보 같은 메타데이터도 지워져요.
- Word·한글·PowerPoint 같은 다른 문서는 올릴 수 없어요. 문서 분석에는 공개 https 링크로 넘기세요.
파일 목록
GET /v1/files
드라이브에 있는 파일을 봐요. 내가 올린 파일과 데브다이브에서 만든 결과가 함께 있어요.
| 쿼리 | 기본값 | 설명 |
|---|---|---|
page | 1 | 쪽 번호(1부터) |
size | 20 | 한 쪽의 개수(1~50) |
{
"object": "list",
"data": [
{
"id": "566c9a04-79a4-401d-a2e9-3ad2ad7799dc.mp4",
"object": "file",
"name": "566c9a04-79a4-401d-a2e9-3ad2ad7799dc.mp4",
"url": "https://api.devdive.ai/media/…",
"content_type": null,
"size": 6224377,
"created_at": "2026-11-04T04:51:58.640709Z",
"url_expires_in_days": 3
}
],
"page": 1,
"size": 20,
"total": 5396,
"total_pages": 270
}
결과·파일 링크 규칙
- 데브다이브가 주는 파일 링크(
https://api.devdive.ai/media/…)는 받은 때부터 3일 동안 열려요. 링크는 로그인 없이 열리니 함부로 공유하지 마세요. - 3일이 지나면 링크가
410 link_expired로 닫혀요. 파일은 드라이브에 남아 있으니GET /v1/files에서 새 링크를 받으세요. - 이 링크는 다른 엔드포인트의 입력으로 그대로 쓸 수 있어요. 단, 내 계정의 링크만 돼요. 다른 계정의 링크를
넣으면
403이 와요. - 오래 둘 파일은 내려받아 내 저장소에 두세요.