콘텐츠를 예약하는 두 가지 방법
Upload-Post는 스케줄링에 두 가지 접근 방식을 제공합니다. scheduled_date 파라미터로 정확한 날짜와 시간을 설정하거나, 대기열 시스템을 사용하여 시스템이 최적의 시간을 결정하게 할 수 있습니다. 두 가지 모두 동영상 업로드, 사진 업로드, 텍스트 게시물 등 모든 엔드포인트에서 작동합니다.
옵션 A: 특정 날짜와 시간에 예약하기
업로드 요청에 scheduled_date 파라미터를 추가하세요. 형식은 ISO-8601이며, 최대 365일 후까지 예약할 수 있습니다.
curl -X POST https://api.upload-post.com/api/upload \
-H "권한 부여: API 키 your-api-key-here" \
-F "[email protected]" \
-F "user=mybrand" \
-F "title=Coming soon... stay tuned!" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "scheduled_date=2025-09-22T10:00:00Z" \
-F "timezone=Europe/Madrid"
몇 가지 중요한 점이 있습니다. 날짜는 기본적으로 UTC이지만, IANA 형식(미국/뉴욕, 유럽/런던, 아시아/도쿄 등)의 timezone 파라미터를 전달하면 올바른 현지 시간에 게시물이 게시됩니다. 직접 타임존 계산을 할 필요가 없습니다.
게시물이 성공적으로 예약되면 API는 202 상태와 함께 job_id를 포함한 응답을 반환합니다:
{
"success": true,
"job_id": "scheduler_job_abc123",
"scheduled_date": "2025-09-22T10:00:00Z"
}
나중에 게시물을 수정하거나 취소할 때 필요하므로 이 job_id를 잘 보관해 두세요.
옵션 B: 대기열 시스템 사용
대기열은 정확한 시간을 지정하지 않고도 일관된 게시를 원할 때 적합합니다. 날짜를 선택하는 대신 add_to_queue=true를 설정하면 Upload-Post가 설정된 스케줄에 따라 다음 가용 시간 슬롯을 자동으로 배정합니다.
대기열 설정하기
먼저 대기열 설정을 구성합니다. 원하는 요일과 시간 슬롯을 정의하세요:
curl -X POST https://api.upload-post.com/api/uploadposts/queue/settings \
-H "권한 부여: API 키 your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"timezone": "미국/뉴욕",
"slots": [
{ "hour": 9, "minute": 0 },
{ "hour": 12, "minute": 30 },
{ "hour": 17, "minute": 0 }
],
"days": [0, 1, 2, 3, 4]
}' 이 예제는 뉴욕 시간 기준으로 월요일부터 금요일까지 오전 9시, 오후 12시 30분, 오후 5시에 게시합니다. 하루에 최대 24개의 슬롯을 정의할 수 있습니다.
대기열에 콘텐츠 추가하기
curl -X POST https://api.upload-post.com/api/upload \
-H "권한 부여: API 키 your-api-key-here" \
-F "[email protected]" \
-F "user=mybrand" \
-F "title=Monday motivation" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "add_to_queue=true" Upload-Post가 자동으로 이 게시물을 다음 빈 슬롯에 배정합니다. 수요일 오후 2시라면 같은 날 오후 5시에 예약됩니다. 수요일 슬롯이 모두 차 있으면 목요일 오전 9시로 넘어갑니다.
예정된 대기열 슬롯 미리보기
콘텐츠를 대기열에 넣기 전에 어떤 시간이 가능한지 확인하고 싶다면 미리보기 엔드포인트를 사용하세요:
curl https://api.upload-post.com/api/uploadposts/queue/preview?count=10 \
-H "권한 부여: API 키 your-api-key-here" 다음 10개의 가용 슬롯과 정확한 날짜 및 시간이 반환됩니다. 한 번에 최대 50개까지 요청할 수 있습니다.
예약된 게시물 관리하기
콘텐츠가 예약되면 API를 통해 완전히 제어할 수 있습니다.
예약된 게시물 전체 조회
curl https://api.upload-post.com/api/uploadposts/schedule \
-H "권한 부여: API 키 your-api-key-here"
대기 중인 작업의 job_id, scheduled_date, 플랫폼 상세 정보 및 콘텐츠 미리보기 URL이 포함된 배열이 반환됩니다.
예약된 게시물 수정
게시 날짜를 변경하거나 캡션을 업데이트해야 하나요? PATCH 요청을 사용하세요:
curl -X PATCH https://api.upload-post.com/api/uploadposts/schedule/scheduler_job_abc123 \
-H "권한 부여: API 키 your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"scheduled_date": "2025-09-25T14:00:00Z",
"title": "더 나은 해시태그로 업데이트된 캡션"
}' 예약된 게시물 취소
curl -X DELETE https://api.upload-post.com/api/uploadposts/schedule/scheduler_job_abc123 \
-H "권한 부여: API 키 your-api-key-here" 게시물과 업로드된 자산이 즉시 삭제됩니다.
대기열로 콘텐츠 캘린더 만들기
많은 에이전시가 사용하는 실용적인 워크플로우를 소개합니다. 월요일에 콘텐츠를 일괄 제작하고, 모두 대기열에 업로드하면 시스템이 주 전체에 자동으로 분배합니다. 수요일 오전 9시에 게시 버튼을 누르려고 온라인에 있을 필요가 없습니다.
이 방법은 n8n이나 Make.com 같은 도구와 결합하면 더욱 강력합니다. 예를 들어, Google Drive 폴더에 새 파일이 추가되면 자동으로 대기열에 추가되는 워크플로우를 설정할 수 있습니다. 바로 사용할 수 있는 설정을 위해 n8n용 Google Sheets 스케줄링 템플릿을 확인해 보세요.
연중 중요한 날짜에 맞춰 콘텐츠를 계획할 때는 소셜 미디어 공휴일 캘린더도 유용합니다.
Python으로 예약하기
from upload_post import UploadPostClient
from datetime import datetime, timedelta
client = UploadPostClient(api_key="your-api-key-here")
# Schedule a video for tomorrow at 10 AM Madrid time
publish_date = (datetime.now() + timedelta(days=1)).replace(
hour=10, minute=0, second=0
)
response = client.upload_video(
video_path="/path/to/video.mp4",
title="Python에서 예약됨",
user="mybrand",
platforms=["tiktok", "instagram", "youtube"],
scheduled_date=publish_date.isoformat(),
timezone="Europe/Madrid"
)
print(f"예약됨! 작업 ID: {response['job_id']}") 플랫폼별 일일 업로드 제한
많은 콘텐츠를 예약할 때 각 플랫폼이 일일 제한을 적용한다는 점을 기억하세요. 이 제한은 연결된 계정당 24시간 단위의 롤링 윈도우입니다:
| 플랫폼 | 일일 제한 |
|---|---|
| TikTok | 15회 업로드 |
| YouTube | 10회 업로드 |
| 20회 업로드 | |
| 25회 업로드 | |
| 레딧 | 40회 업로드 |
| 50회 업로드 | |
| X (트위터) | 50회 업로드 |
| 스레드 | 50회 업로드 |
| Bluesky | 50회 업로드 |
| 링크드인 | 150회 업로드 |
대기열 시스템은 이러한 제한을 자동으로 준수하며 어떤 플랫폼에서도 과도하게 예약하지 않습니다.
자주 묻는 질문
같은 콘텐츠를 플랫폼별로 다른 시간에 예약할 수 있나요?
하나의 요청으로는 불가능하지만, 각 플랫폼에 대해 다른 scheduled_date 값으로 별도의 요청을 보낼 수 있습니다. 또는 자동으로 분배하는 대기열 시스템을 사용하세요.
예약된 게시물이 실패하면 어떻게 되나요?
웹훅을 설정한 경우 오류 상세 정보가 포함된 알림을 받게 됩니다. GET /api/uploadposts/status?job_id=your_job_id 엔드포인트로 상태를 확인할 수도 있습니다.
노코드 도구와 스케줄링을 함께 사용할 수 있나요?
물론입니다. n8n과 Make.com 모두 HTTP 요청 모듈을 통해 scheduled_date 또는 add_to_queue 파라미터를 전송할 수 있습니다. 스프레드시트에서 읽어와 모든 것을 자동으로 예약하는 비주얼 워크플로우를 구축할 수 있습니다.