Quy trình phê duyệt
Nếu quy trình xuất bản của bạn yêu cầu phê duyệt trước khi gửi bài đăng, hãy đặt trườngrequiresApproval thành true.
Điều này tương đương với việc tạm dừng bài đăng cho đến khi tham số approved được đặt thành true.
Ví dụ quy trình phê duyệt
Bài đăng sẽ có trạng thái “awaiting approval” cho đến khi tham sốapproved được đặt thành true qua endpoint PATCH /post.
Xuất bản với các tham số
Xuất bản bài đăng của bạn bằng endpoint /post với trường
requiresApproval
là true. Bạn cũng có thể bao gồm các tham số tiêu chuẩn như scheduleDate.Trạng thái là awaiting approval
Bài đăng sẽ ở trạng thái “awaiting approval” và sẽ được giữ lại cho đến khi được phê duyệt.
Phê duyệt bài đăng
Cập nhật bài đăng bằng thao tác PATCH /post đặt trường
approved
thành true. Bài đăng bây giờ sẽ được gửi vào thời điểm đã lên lịch.Publish the Post with Approval
Video quy trình phê duyệt
Vui lòng xem video bên dưới để có ví dụ về quy trình phê duyệt.Auto Hashtag
Thêm các hashtag phù hợp nhất vào bài đăng của bạn.autoHashtag là một đối tượng, hoặc Boolean - xem bên dưới, với các tham số sau:
max: (tùy chọn) Integer số hashtag để thêm, phạm vi 1-10. Mặc định 2.position: (tùy chọn) String “auto” hoặc “end”. Auto thêm hashtag trong bài đăng hoặc ở cuối. “end” thêm hashtag chỉ ở cuối.
true thay vì một đối tượng.
Auto Repost
Tự động đăng lại nội dung của bạn nhiều lần vào các khoảng thời gian đều đặn, tạo ra nội dung evergreen luôn tươi mới và hiển thị với đối tượng của bạn. Yêu cầu gói trả phí. Tham số:repeat: (bắt buộc) Số lần đăng lại nội dung. Phải nằm trong khoảng từ 1 đến 10.days: (bắt buộc) Số ngày giữa mỗi lần đăng lại. Phải ít nhất 2 ngày.startDate: (tùy chọn) Khi nào bắt đầu lịch đăng lại, ở định dạng ISO-8601 UTC. Nếu không được chỉ định, bài đăng đầu tiên sẽ được xuất bản ngay lập tức. Bạn nên sử dụng tham sốstartDatethay cho tham sốscheduleDatecấp cao nhất.
Auto Repost
autoRepostId cho mỗi lần đăng lại.
Auto Repost Response
autoRepostId được gán để theo dõi chuỗi bài đăng đó.
Bạn có thể lấy tất cả các auto reposts cho một bài đăng với lệnh gọi History với autoRepostId.
Nếu bạn cần xóa một repost, bạn có thể sử dụng lệnh gọi DELETE với post ID.
Bình luận đầu tiên (First Comment)
Tự động thêm bình luận đầu tiên, kèm phương tiện, sau khi bài đăng được xuất bản. Đối với TikTok, bình luận bị hoãn cho đến khi video hoàn tất xử lý (xem Thời gian xử lý bình luận đầu tiên). Đăng bình luận đầu tiên trên bài đăng mạng xã hội của riêng bạn có thể giúp khởi động sự tương tác và tạo âm hưởng cho cuộc thảo luận tiếp theo.Thời gian xử lý bình luận đầu tiên
Đối với hầu hết các mạng xã hội, phản hồi API bị trì hoãn vì hệ thống của chúng tôi phải (1) đợi bài đăng gốc được xuất bản hoàn toàn, sau đó (2) thêm bình luận vào bài đăng đã xuất bản đó. Quá trình tuần tự này thêm một độ trễ khoảng 20 giây. TikTok được xử lý khác. TikTok xử lý video không đồng bộ, vì vậyid bài đăng là "pending" cho đến khi webhook post.publish.publicly_available của TikTok giải quyết id video thực (xem Xử lý TikTok). Do đó, phản hồi /post trả về bình luận đầu tiên TikTok với status: "pending" ngay lập tức, và bình luận được đăng tự động khi TikTok hoàn tất xử lý và webhook Scheduled Action tikTokPublished kích hoạt. TikTok không đảm bảo thời gian xử lý, vì vậy không có độ trễ cố định.
Lưu ý quan trọng về TikTok: Để bình luận đầu tiên hoạt động đúng cách trên TikTok, tham số visibility của bài đăng phải được đặt thành public. Một video không công khai không bao giờ nhận được webhook publicly_available, vì vậy bình luận đầu tiên của nó không thể được đăng; trong trường hợp đó Ayrshare trả về lỗi bình luận thay vì để nó ở trạng thái pending.
Bài đăng Idempotent
Idempotency là một tính năng tùy chọn đảm bảo một yêu cầu chỉ được thực thi một lần, ngay cả khi nó vô tình được gửi nhiều lần. Khi đăng nội dung bằng API, bạn có thể bao gồm một tham sốidempotencyKey tùy chọn trong body yêu cầu để nhận dạng thao tác một cách duy nhất. Điều này cho phép bạn thử lại yêu cầu đăng bài an toàn mà không có rủi ro tạo ra các bài đăng trùng lặp.
Để sử dụng idempotency, hãy thêm tham số idempotencyKey vào body JSON của yêu cầu POST /post:
Idempotency Key
idempotencyKey phải là một chuỗi duy nhất cho mỗi User Profile. Nếu một yêu cầu được thực hiện với cùng một idempotencyKey cho một User Profile nhất định, bất kể trạng thái của bài đăng (success, error, pending, hoặc deleted), một lỗi sẽ được trả về, cho biết đã tìm thấy khóa trùng lặp.
Sử dụng idempotency giúp ngăn chặn việc tạo ra các bài đăng trùng lặp vô ý khi thử lại các yêu cầu thất bại hoặc xử lý các vấn đề về mạng. Tuy nhiên, vẫn nên triển khai xử lý lỗi phù hợp và các cơ chế thử lại trong ứng dụng của bạn để xử lý các thất bại tiềm ẩn một cách nhẹ nhàng.
Yêu cầu hình ảnh & video
Đăng hình ảnh và video có các yêu cầu khác nhau cho mỗi mạng, nhưng đừng lo. Hệ thống của chúng tôi xác minh bài đăng của bạn trước khi gửi, vì vậy bạn sẽ nhận được phản hồi lỗi nếu có gì đó không ổn. Xem liên kết bên dưới để biết chi tiết về hướng dẫn hình ảnh và video.Image & Video Guidelines
URL hợp lệ
Hãy đảm bảo (các) URL phương tiện của bạn hợp lệ và truy cập trực tiếp phương tiện. Kiểm tra đầu tiên là thử URL trong trình duyệt. Nếu hình ảnh không tải được hoặc không thể tải xuống trong trình duyệt, nó có thể sẽ thất bại. Ví dụ, một URL DropBox mở ứng dụng web DropBox sẽ không hoạt động. Chúng tôi xác minh URL phương tiện bằng cách thực hiện yêu cầuHEAD.
Vui lòng đảm bảo nhà cung cấp lưu trữ không chặn yêu cầu HEAD hoặc bài đăng sẽ thất bại với lỗi 403.
Ví dụ, đây là yêu cầu HEAD đến URL phương tiện:
Fetch HEAD Request
Bảo vệ phương tiện tự động
Ayrshare bao gồm tính năng bảo vệ phương tiện tích hợp có thể phát hiện và giải quyết một số vấn đề giao nhận phương tiện trong quá trình đăng bài. Khi một bài đăng thành công nhưng đã phát hiện và giải quyết được một vấn đề nội dung, mỗi mục nhập bị ảnh hưởng trongpostIds[] bao gồm một đối tượng contentIssues tùy chọn để bạn có thể xác định và khắc phục vấn đề cơ bản:
originMediaHostFailed trong phản hồi của mình, hãy xem lại cấu hình lưu trữ phương tiện của bạn. Xem Meta Media Crawler Blocked để biết các nguyên nhân và giải pháp phổ biến.
Khoảng trắng & ký tự đặc biệt
Chúng tôi khuyến nghị tránh những điều sau trong URL phương tiện của bạn:- Khoảng trắng trong URL.
- Khoảng trắng được mã hóa URL trong URL.
- Ký tự đặc biệt trong URL ngay cả khi chúng được mã hóa url, chẳng hạn như dấu trọng âm é.
test .webp. Chúng tôi cũng không khuyến nghị sử dụng khoảng trắng được mã hóa URL, chẳng hạn như %20 trong URL - điều này cũng có thể gây ra vấn đề với một số mạng xã hội.
Và hình ảnh Unsplash này:
Làm sạch tên file & URL
Bạn có thể làm sạch tên file của mình bằng biểu thức chính quy như/[^a-z0-9\/\.]/gi.
Thông tin bổ sung
- Nếu bạn đang tự lưu trữ, hãy đảm bảo URL có thể được truy cập bên ngoài và không yêu cầu quyền đặc biệt.
- Xem bên dưới về cách xử lý video có phần mở rộng không rõ, thường là URL đã ký như AWS S3.
- Nếu bạn đang sử dụng URL đã ký, chẳng hạn như S3, chúng tôi khuyến nghị đặt thời hạn URL ít nhất 7 ngày. Điều này cho phép nhóm của chúng tôi hỗ trợ với bất kỳ câu hỏi nào bạn có về việc xuất bản bài đăng.
- Kiểm tra xem URL phương tiện có tồn tại hay không với công cụ xác minh phương tiện của chúng tôi.
Tốc độ tải xuống
Hãy đảm bảo lưu trữ phương tiện của bạn có kết nối nhanh, đặc biệt là tốc độ tải xuống. Bạn có thể kiểm tra hiệu suất lưu trữ phương tiện của mình tại pingdom. Chúng tôi khuyến nghị ít nhất xếp hạng B.Phần mở rộng video
Nếu URL của bạn không kết thúc bằng phần mở rộng video đã biết nhưmp4, bạn có thể sử dụng trường isVideo: true trong bài đăng để chỉ định mediaUrl là video. Ayrshare sẽ cố gắng xác định loại file, chẳng hạn như MOV. Tuy nhiên, chúng tôi khuyến nghị kết thúc file video một cách rõ ràng với phần mở rộng đã biết, chẳng hạn như mp4, vì điều này có tỷ lệ thành công cao hơn với các mạng xã hội.
Chỉ hình ảnh hoặc video
Một số mạng xã hội hỗ trợ gửi phương tiện mà không có nội dung bài đăng. Nếu bạn không muốn bao gồm nội dung bài đăng, hãy gửi một chuỗi rỗng:post: ""
Các mạng xã hội sau hỗ trợ không có nội dung/văn bản trống: Facebook, Instagram, LinkedIn, Threads, TikTok, và X/Twitter.
Kiểm thử hình ảnh và video
Hãy cân nhắc sử dụng tạo văn bản ngẫu nhiên và hình ảnh hoặc video ngẫu nhiên để tăng tốc quá trình kiểm thử của bạn. Đừng cố nghĩ ra điều gì đó khác biệt cho mỗi bài đăng kiểm thử!Ngắt dòng
Nếu bạn muốn có ngắt dòng (dòng mới) trong bài đăng, hãy sử dụng ngắt dòng vô hình
\u2063\n. Ví dụ, This is a new\u2063\nline.Chúng tôi cũng khuyến nghị thử trong Postman để xem cách ngắt dòng mới được dịch trong ngôn ngữ bạn chọn. Ví dụ, PHP thường chỉ sử dụng \nMột số mạng xã hội hiện không hỗ trợ ngắt dòng trong nội dung bài đăng.Bài đăng đa nền tảng và phương tiện
Tính năng này cho phép bạn tùy chỉnh nội dung bài đăng và phương tiện cho các mạng xã hội khác nhau trong một lệnh gọi API duy nhất. Bạn có thể chỉ định văn bản và/hoặc hình ảnh duy nhất cho mỗi nền tảng bằng cách sử dụng các đối tượng cho trườngpost và mediaUrls.
- Sử dụng cấu trúc đối tượng cho các trường
postvà/hoặcmediaUrls. - Chỉ định nội dung cho từng nền tảng bằng tên nền tảng làm khóa.
- Bao gồm khóa
defaultcho nội dung được sử dụng trên các nền tảng không được chỉ định rõ ràng.
- Instagram sẽ sử dụng văn bản cụ thể và URL hình ảnh của nó.
- Facebook sẽ sử dụng văn bản cụ thể và URL hình ảnh mặc định.
- LinkedIn sẽ sử dụng văn bản mặc định và URL hình ảnh cụ thể của nó.
Nếu bạn cần đăng nhiều hình ảnh đến các nền tảng khác nhau, hãy tạo các bài đăng riêng biệt cho mỗi
nền tảng thay vì sử dụng cấu trúc đa nền tảng này.
Profile Keys
Đăng bài thay mặt người dùng bằng cách cung cấp Profile Keys của người dùng như một tham số body và dữ liệu bổ sung trong phản hồi. Yêu cầu Business hoặc Enterprise Plan.Profiles
Bài đăng văn bản phong phú
Bạn có thể thêm văn bản phong phú như ”𝓗𝓮𝓵𝓵𝓸, how about a little 𝗯𝗼𝗹𝗱 𝘁𝗲𝘅𝘁 and 𝘪𝘵𝘢𝘭𝘪𝘤𝘴 𝘵𝘦𝘹𝘵 and an x₂?”. Bạn có thể sử dụng văn bản phong phú trên các mạng như Twitter, Facebook, LinkedIn, Telegram, và Instagram. Nếu đăng lên Reddit, vui lòng sử dụng định dạng Reddit-flavored Markdown. Các phần tử HTML được sử dụng để chỉ định loại văn bản phong phú, được chuyển thành unicode. Ví dụ:Các phần tử HTML
| HTML | Ví dụ |
|---|---|
| <b>Nice One!</b> | Nice One! |
| <strong>Hello, world!</strong> | Hello, world! |
| <em>World</em> | World |
| normal <i>italics <b>bold italics</b></i> | normal italics bold italics |
| `<b>Hello</b>, world!` | Hello, world! |
| `<b>Hello</b>, world!` | Hello, world! |
| <samp>123</samp> | 𝟷𝟸𝟹 |
| <var>Hello</var> | 𝓗𝓮𝓵𝓵𝓸 |
| x<sub>2</sub> | x₂ |
| x<sup>2</sup> | x² |
Mã CSS
| Mã | Ví dụ | Kết quả |
|---|---|---|
| \u00B0 | It’s 25\u00B0C today! | It’s 25°C today! |
| \u2063\n | This is a new\u2063\nline. | This is a new line. |
Lên lịch bài đăng
Tạo bài đăng đã lên lịch
Bạn có thể lên lịch bài đăng trong tương lai bằng cách chỉ định tham sốscheduleDate với datetime ở Zulu/UTC. Thời gian Zulu, còn được gọi là Coordinated Universal Time (UTC), là tiêu chuẩn thời gian thế giới.
Ví dụ, sử dụng định dạng YYYY-MM-DDThh:mm:ssZ và gửi dưới dạng 2026-07-08T12:30:00Z.
Vui lòng xem utctime để biết thêm ví dụ.
Nếu một
mediaUrl được bao gồm trong một bài đăng đã lên lịch, phương tiện phải có sẵn tại thời điểm
xuất bản đã lên lịch. Ví dụ, nếu bài đăng được lên lịch xuất bản vào ngày 5 tháng 3 năm 2026,
phương tiện phải có sẵn vào ngày 5 tháng 3 năm 2026.Kiểm tra trạng thái bài đăng đã lên lịch
Bạn có thể kiểm tra trạng thái của bài đăng đã lên lịch theo nhiều cách:- Thiết lập Webhook Scheduled Action để tự động nhận trạng thái của bài đăng đã lên lịch. Điều này có sẵn cho Business plan và là phương pháp được khuyến nghị.
- Lấy trạng thái của bài đăng đã lên lịch với lệnh gọi GET với post ID.
- Kiểm tra trạng thái trong Ayrshare Dashboard. Trước tiên chuyển sang User Profile mà bài đăng đã được xuất bản, sau đó vào trang “Posts” và tìm kiếm bằng Ayrshare Post ID.
Tạm dừng bài đăng đã lên lịch
Bạn có thể tạm dừng bài đăng đã lên lịch chưa được xuất bản. Tạm dừng bài đăng đã lên lịch sẽ ngăn nó được xuất bản cho đến khi bài đăng được bỏ tạm dừng. Sử dụng lệnh gọi PATCH để tạm dừng hoặc bỏ tạm dừng bài đăng đã lên lịch. Xin lưu ý nếu bài đăng được bỏ tạm dừng vàscheduleDate ở trong quá khứ bài đăng sẽ được xuất bản ngay lập tức. Cân nhắc cập nhật scheduleDate trước khi bỏ tạm dừng.
Rút gọn liên kết
Các liên kết trong bài đăng có thể được rút gọn bằng link shortner của Ayrshare. Bạn có thể bật tính năng rút gọn liên kết tự động với tham sốshortenLinks khi gửi bài đăng. Yêu cầu Max Pack.
Hình ảnh Unsplash
Các trường sau khả dụng cho tham số bodyunsplash:
- Hình ảnh ngẫu nhiên:
randomtrả về một hình ảnh Unsplash ngẫu nhiên. - Hình ảnh dựa trên tìm kiếm: giá trị String cụm từ tìm kiếm; ví dụ,
moneysẽ chọn một hình ảnh ngẫu nhiên dựa trên money. - Image IDs: giá trị Array of Ids; ví dụ [“HubtZZb2fCM”] của hình ảnh https://unsplash.com/photos/HubtZZb2fCM
Nếu sao chép một URL Unsplash để đăng trong
mediaUrls, vui lòng chắc chắn sao chép địa chỉ hình ảnh và
không chỉ là URL. Vui lòng xem
ví dụ này để biết thêm thông tin.