게시

동영상 API를 사용하면 Facebook 페이지동영상릴스를 게시할 수 있습니다.

요구 사항

페이지에 동영상을 게시하려면 다음이 필요합니다.

  • 페이지에서 CREATE_CONTENT 작업을 수행할 수 있는 사용자가 요청한 페이지 액세스 토큰
  • 토큰을 요청하는 사람이 Facebook 로그인을 통해 다음 권한에 대한 액세스 권한을 앱에 부여해야 합니다.
  • 동영상 핸들

동영상 게시

동영상을 게시하려면 /<PAGE_ID>/videos 엔드포인트로 POST 요청을 보내세요.

curl -X POST \
  "https://graph-video.facebook.com/v21.0/<PAGE_ID>/videos" \
  -F "access_token=<PAGE_ACCESS_TOKEN>" \
  -F "title=<VIDEO_TITLE>" \
  -F "description=<VIDEO_DESCRIPTION>" \ 
  -F "fbuploader_video_file_chunk=<UPLOADED_FILE_HANDLE>"

요청에 성공하면 앱이 동영상 ID를 포함한 JSON 응답을 받습니다.

{
  "id":"<VIDEO_ID>"
}

동영상 파일 업로드

다음은 재개 가능한 업로드 API 문서에서 발췌한 내용입니다.

파일 업로드

재개 가능한 업로드 API를 사용하면 처음부터 다시 시작할 필요 없이 Meta의 소셜 그래프에 대용량 파일을 업로드하고 중단된 업로드 세션을 다시 시작할 수 있습니다. 파일을 업로드한 후에는 공개할 수 있습니다.

업로드된 파일 핸들을 지원하는 엔드포인트에 대한 참고 자료에는 해당 엔드포인트가 재개 가능한 업로드 API에서 반환한 핸들을 지원하는지 여부가 나와 있습니다.

시작하기 전에

이 가이드에서는 그래프 API 개요Meta 개발 가이드를 읽고 Meta 개발에 필요한 조치를 취한 것으로 가정합니다.

다음과 같은 항목이 필요합니다.

  • Meta 앱 ID
  • 다음 중 한 가지 형식의 파일:
    • pdf
    • jpeg
    • jpg
    • png
  • 사용자 액세스 토큰

1단계: 업로드 세션 시작

업로드 세션을 시작하려면 /<APP_ID>/uploads 엔드포인트로 POST 요청을 보냅니다. 여기에서 <APP_ID>는 앱의 Meta ID이며 다음과 같은 필수 매개변수를 포함합니다.

  • file_name - 파일 이름
  • file_length - 파일 크기(단위: 바이트)
  • file_type - 파일의 MIME 유형. 유효한 값: application/pdf, image/jpeg, image/jpg, image/pngvideo/mp4

요청 구문

가독성을 높이기 위해 형식을 지정했습니다.

curl -i -X POST "https://graph.facebook.com/v21.0/<APP_ID>/uploads
  ?file_name=<FILE_NAME>
  &file_length=<FILE_LENGTH>
  &file_type=<FILE_TYPE>
  &access_token=<USER_ACCESS_TOKEN>"

요청에 성공하면 앱이 업로드 세션 ID를 포함하는 JSON 응답을 받게 됩니다.

{
  "id": "upload:<UPLOAD_SESSION_ID>"
}

2단계: 업로드 시작

다음 file_offset0으로 설정하고 /upload:<UPLOAD_SESSION_ID> 엔드포인트로 POST 요청을 보내서 파일 업로드를 시작합니다.

요청 구문

curl -i -X POST "https://graph.facebook.com/v21.0/upload:<UPLOAD_SESSION_ID>"
  --header "Authorization: OAuth <USER_ACCESS_TOKEN>"
  --header "file_offset: 0"
  --data-binary @<FILE_NAME>

헤더에 액세스 토큰을 포함하지 않으면 호출이 실패합니다.

요청에 성공하면 앱이 파일 핸들을 받습니다. 이 핸들은 API 호출에서 엔드포인트로 파일을 공개하는 데 사용됩니다.

{
  "h": "<UPLOADED_FILE_HANDLE>"
}

응답 샘플

{
    "h": "2:c2FtcGxl..."
}

중단된 업로드 재개

업로드 세션을 시작했지만 예상보다 오래 걸리거나 중단된 경우 1단계/upload:<UPLOAD_SESSION_ID> 엔드포인트로 GET 요청을 보내세요.

요청 구문

가독성을 높이기 위해 형식을 지정했습니다.

curl -i -X GET "https://graph.facebook.com/v21.0/upload:<UPLOAD_SESSION_ID>"
  --header "Authorization: OAuth <USER_ACCESS_TOKEN>""

요청에 성공하면 앱이 중단 시점에서 업로드 프로세스를 재개하는 데 사용할 수 있는 file_offset 값이 포함된 JSON 응답을 받습니다.

{
  "id": "upload:<UPLOAD_SESSION_ID>"
  "file_offset": <FILE_OFFSET>"
}

2단계에서 했던 것처럼 이 file_offset 값을 사용하여 다른 POST 요청을 보내세요. 그러면 중단 시점부터 업로드 프로세스가 다시 시작됩니다.

다음 단계