Bắt đầu

Tìm hiểu cách triển khai quy trình quản lý tài sản nội dung.

Quy trình Quản lý tài sản nội dung chỉ dành cho một số đối tác. Vui lòng liên hệ với Đối tác của Meta để biết thêm thông tin.

Yêu cầu

Để sử dụng API này, bạn cần:

Quyền

Sau khi đăng nhập vào ứng dụng của mình, bạn sẽ cần yêu cầu người dùng cấp các quyền sau đây:

  • business_creative_management - Quản lý nội dung và thư mục nội dung của doanh nghiệp. Bắt buộc đối với tất cả điểm cuối API Trình quản lý tài sản nội dung của doanh nghiệp.
  • business_creative_insights - Truy cập vào thông tin chi tiết về tài sản nội dung của doanh nghiệp.
  • business_management - Quản lý người dùng doanh nghiệp và chấp nhận yêu cầu thỏa thuận hợp tác.

Giới hạn

  • Người dùng ứng dụng (nhà quảng cáo) phải là quản trị viên của doanh nghiệp mà ID trình quản lý kinh doanh biểu thị

Bước 1: Tạo thư mục nội dung của doanh nghiệp

Tạo thư mục nội dung của doanh nghiệp thay mặt cho doanh nghiệp của nhà quảng cáo bằng cách gửi yêu cầu POST đến điểm cuối {business-id}/creative_folders. Trong trường hợp này, {business-id} là ID doanh nghiệp của nhà quảng cáo.

Bạn cần có quyền business_creative_management để thực hiện hành động này.

Yêu cầu mẫu

curl -X POST \
  -F 'name={folder-name}' \
  -F 'access_token={access-token}' \
  https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders

Phản hồi mẫu

{ “id”: “{business-creative-folder-id}” }

Bạn cũng có thể tạo thư mục con.

Bước 2: Thêm nội dung vào thư mục

Thêm tài sản nội dung hiện có vào thư mục bằng cách gửi yêu cầu POST đến {business-id}/images hoặc {business-id}/videos. Bạn cần có quyền business_creative_management để thực hiện hành động này.

Thêm hình ảnh

Ví dụ - Cách thêm hình ảnh:

curl -X POST \
  -F 'bytes={image-content-in-bytes-format}' \
  -F 'name={image-name}' \
  -F 'access_token={access-token}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  https://graph.facebook.com/{version}/{business-id}/images

Phản hồi

{
  "images":{
    "{image-name}":{
      "id":"{business-image-id}",
      "hash":"{hash}",
      "url":"{image-url}"
    }
  }
}

Tải video lên

Tải video lên trong một yêu cầu nếu video đó chưa đến vài megabyte hoặc tải từng phần video lên. Thực hiện lệnh gọi API để tải video lên tại graph-video.facebook.com thay cho graph.facebook.com.

Ví dụ - Gửi yêu cầu POST đến {business-id}/video kèm theo tên video, nguồn và ID thư mục nội dung của doanh nghiệp.

curl -X POST \
  -F 'name={video-name}' \
  -F 'source='@{video-path}'' \
  -F 'access_token={access-token}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  https://graph-video.facebook.com/{version}/{business-id}/videos

Phản hồi

{ 
    "success": true, 
    "business_video_id": "{business-video-id}" 
}

Tải từng phần video lên

Đối với video lớn hơn, hãy gửi một yêu cầu start, một hoặc nhiều yêu cầu transfer và một yêu cầu finish.

Để gửi yêu cầu start và tạo phiên tải video lên, hãy gửi yêu cầu POST đến /{business-id}/videos, đặt trường upload_phasestart và chỉ định file_size (theo byte).

curl -X POST \
  -F 'title={video-name}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  -F 'access_token={access-token}' \
  -F 'upload_phase=start' \
  -F 'file_size={video_file_size_in_bytes}' \
  https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Phản hồi mẫu

{
  "upload_session_id": "{session-id}",
  "business_video_id": "{business-video-id}",
  "video_id": "{video-id}",
  "start_offset": "0",
  "end_offset": "52428800"
}

Để tải [0, 52428800] lên từ video của bạn, hãy chia file thành nhiều phần theo các khoảng bù giữa bắt đầu và kết thúc, rồi gửi những phần đó bằng yêu cầu transfer. Chúng tôi sẽ gửi cho bạn khoảng bù mới cho từng phần. Hãy sử dụng những khoảng bù mới này để tải từng phần lên.

Ví dụ: Gửi phần đầu tiên

curl -X POST \
  -F 'title={video-name}' \
  -F 'access_token={access-token}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  -F 'upload_phase=transfer' \
  -F 'upload_session_id={session-id}' \
  -F 'start_offset=0' \
  -F 'video_file_chunk=@{binary-chunk-filename}' \
  https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Khi thành công, chúng tôi sẽ gửi phản hồi kèm theo khoảng bù cho phần tiếp theo:

{
 "start_offset": "52428800",    //Start byte position of the next file chunk.
 "end_offset": "104857601"      //End byte position of the next file chunk.
}

Cắt và tải lên phần thứ hai có khoảng [52428800, 104857601] trong file của bạn và gửi đi:

curl -X POST \
  -F 'title={video-name}' \
  -F 'access_token={access-token}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  -F 'upload_phase=transfer' \
  -F 'start_offset=52428801' \
  -F 'upload_session_id={your-upload-sesson-id}' \
  -F 'video_file_chunk={binary-chunk-filename}' \
  https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Gửi tất cả những phần khác cho đến khi start_offset bằng end_offset:

{
  "start_offset": "152043520",
  "end_offset": "152043520"
}

Nghĩa là bạn đã tải toàn bộ file lên. Bây giờ, bạn cần đăng video này và đóng phiên tải lên.

curl -X POST \
  -F 'title={video-name}' \
  -F 'access_token={access-token}' \
  -F 'creative_folder_id={business-creative-folder-id}' \
  -F 'upload_phase=finish' \
  -F 'upload_session_id={session-id}' \
  https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Nếu xảy ra lỗi trong quá trình tải lên, bạn có thể thử tải lại phần đó lên. Lỗi thường xảy ra do vấn đề phản hồi. Hãy thử tải lại phần không thành công lên. Để biết thêm thông tin về lỗi, hãy xem:

Sau khi bạn tải nội dung lên một thư mục, những nhà quảng cáo có quyền truy cập vào thư mục đó có thể tạo quảng cáo trên Trình quản lý quảng cáo hoặc bằng API Marketing.

Tất cả nội dung bạn đã tải lên sẽ xuất hiện trong Trình quản lý quảng cáo > giao diện người dùng Lựa chọn file phương tiện. Bạn có thể sử dụng những nội dung này trong quy trình Tạo quảng cáoChỉnh sửa quảng cáo. Ngoài ra, thư mục và tài sản nội dung sẽ có trong công cụ Thư viện file phương tiện của Trình quản lý kinh doanh (Trình quản lý kinh doanh > Thư viện file phương tiện).

Bước 3: Cung cấp URL liên kết sâu cho tài sản và tạo quảng cáo hoặc bài viết

Để lấy URL liên kết sâu cho một tài sản cụ thể, hãy truy vấn trường media_library_url của tài sản hình ảnh hoặc video đã tải lên:

curl -X GET \  
  -F 'access_token={partner-access-token}' \
https://graph.facebook.com/v<API_VERSION>/<asset_id>?fields=media_library_url

Nếu bạn muốn sử dụng liên kết sâu để tạo quảng cáo hoặc bài viết trên trang, hãy thêm &action=CREATE_AD hoặc &action=CREATE_POST vào cuối liên kết:

https://business.facebook.com/asset_library/business_creatives/?object_id=<OBJECT_ID>&action=CREATE_AD