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.
Để sử dụng API này, bạn cầ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.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.
curl -X POST \ -F 'name={folder-name}' \ -F 'access_token={access-token}' \ https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders
{ “id”: “{business-creative-folder-id}” }
Bạn cũng có thể tạo thư mục con.
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.
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 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}" }
Đố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_phase
là start
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áo và Chỉ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).
Để 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