파일

이미지 편집, 사진으로 영상 만들기, 음성 인식처럼 파일이 필요한 엔드포인트는 파일을 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
문서PDF
  • 파일 하나에 최대 50MB, 계정당 분당 20개까지 올릴 수 있어요.
  • 형식은 파일 이름이 아니라 내용으로 확인해요. 이름만 바꾼 실행 파일, SVG·HTML, 스크립트가 든 PDF는 올라가지 않아요.
  • 올린 파일은 숨은 내용을 걸러 내고 다시 만들어 저장해요. 사진의 위치 정보 같은 메타데이터도 지워져요.
  • Word·한글·PowerPoint 같은 다른 문서는 올릴 수 없어요. 문서 분석에는 공개 https 링크로 넘기세요.

파일 목록

GET /v1/files

드라이브에 있는 파일을 봐요. 내가 올린 파일과 데브다이브에서 만든 결과가 함께 있어요.

쿼리기본값설명
page1쪽 번호(1부터)
size20한 쪽의 개수(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이 와요.
  • 오래 둘 파일은 내려받아 내 저장소에 두세요.