재시도와 중복 방지
끊긴 요청을 재시도할 때 발행 작업이 중복되지 않게 하세요.
작업마다 requestId 하나 유지
TikTok의 video, Instagram의 instagram, YouTube의 youtube, Facebook의 facebook 입력에는 UUID 형식의 requestId가 들어갑니다. 발행·예약 요청 전에 한 번 생성하고 전체 입력과 함께 저장하세요. 같은 작업을 재시도할 때 ID와 입력을 모두 그대로 사용합니다.
동일한 ID와 입력은 기존 작업을 반환합니다. 계정·내용·미디어 순서·옵션·예약 시각 등이 달라지면 409 REQUEST_CONFLICT가 발생할 수 있습니다. 의도적으로 새 작업을 만들 때만 새 ID를 사용하세요. 기존 작업을 반환할 때도 현재 권한과 적용되는 한도를 검사합니다.
Threads·X·LinkedIn 텍스트 요청에는 이 requestId 기반 중복 방지가 없습니다. 응답이 끊겼다면 발행 여부를 먼저 확인하세요. 다시 요청하면 같은 텍스트가 한 번 더 발행될 수 있습니다.
기존 작업 응답 해석
| 작업 | 진행 중 | 발행 완료 | failed·canceled·unknown |
|---|---|---|---|
| TikTok·Instagram·YouTube 즉시 발행 | 202 | 200 | 502 |
| Facebook 발행·예약 | 202 | 200 | 200, success: false |
신규 예약은 TikTok이 HTTP 200, Instagram·YouTube·Facebook이 HTTP 202를 반환합니다. jobId와 scheduledPostIds를 저장하고 상태 조회로 기존 작업을 해석하세요. HTTP 상태 코드만으로 발행 완료를 판단할 수 없습니다.
결과가 불확실할 때
HTTP 연결이 끊겼다면 저장한 ID와 동일한 입력으로 비동기 요청을 재시도하세요. 작업이 이미 unknown이라면 Posteady는 자동으로 다시 전송하지 않습니다. 대상 소셜 계정에서 발행 여부를 확인한 뒤 새 요청이 필요한지 판단하세요. 새 ID를 사용하면 이미 전달된 글을 중복 발행할 수 있습니다.
failed라면 작업 오류부터 확인하세요. 기존 요청을 다시 보내도 실패한 작업을 조회할 뿐 재시작하지 않습니다. 원인을 해결한 후 의도적으로 새 작업을 만드세요.
텍스트 부분 실패 처리
여러 계정 중 하나 이상 성공하면 HTTP 200, 모든 대상이 실패하면 HTTP 502를 반환합니다. 결과마다 success·postIds·error를 확인하세요. 스레드는 앞부분만 발행된 뒤 실패할 수도 있으므로 게시물 ID를 확인하지 않고 전체 요청을 다시 보내지 마세요.