[DEPRECATED - DO NOT USE] facebook-poster - risk of account ban
DeprecatedPricing
$350.00 / 1,000 facebook post shareds
[DEPRECATED - DO NOT USE] facebook-poster - risk of account ban
DeprecatedDEPRECATED 2026-05-13: Posts to Facebook carry significant risk of Meta auto-banning user accounts. Use viralanalyzer/facebook-ads-library (read-only, no risk).
Pricing
$350.00 / 1,000 facebook post shareds
Rating
0.0
(0)
Developer
viralanalyzer
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
17 days ago
Last modified
Categories
Share
📘 Facebook Page Poster — Publish Images, Videos & Text to Facebook Pages
🔗 View on Apify Store | 🇺🇸 English | 🇧🇷 Português
Publish posts to your own Facebook Page — image, video, or text-only — via real browser automation (Playwright + stealth). This is a Bring-Your-Own-Credentials (BYOC) actor: you supply your Facebook session (cookies) or login, and it posts as your Page. It mirrors the human flow Facebook expects: open the composer, upload media, type the caption, advance through the post settings, and click Postar/Post.
✨ Features
- 🖼️ Image posts — From a public URL or inline Base64
- 🎬 Video posts — MP4 from a public URL or inline Base64 (handled as a reel-style flow)
- 📝 Text posts — Caption-only publishing (no media required)
- 🏷️ Hashtags — Appended to the caption, plus typed into the video "Add tags" field for engagement
- 🔐 BYOC auth — Use exported session cookies (login skipped) or username + password
- ♻️ Session reuse — Cookies are saved and reloaded across runs to reduce re-logins
- 🥷 Stealth browser — Playwright Chromium with anti-automation flags, randomized viewport, pt-BR locale
- 🌍 Residential proxy — Choose a proxy country, or disable proxy entirely
- 🧪 Dry run — Validate the whole flow and capture proof screenshots without publishing
- 📸 Proof screenshots — Every step is captured to the Key-Value Store for auditability
- 🛡️ Setup guide on missing input — Missing credentials or content end with a labeled diagnostic (never charges you)
📥 Input
This actor reads its input from the run input object. There are no strictly required fields in the schema, but to actually publish you need (a) credentials and (b) something to post.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
username | string (secret) | ⚠️ * | — | Facebook login email or phone |
password | string (secret) | ⚠️ * | — | Facebook password |
cookies | string (secret) | ⚠️ * | — | Browser cookies as a JSON array. If valid, login is skipped |
pageUrl | string | ❌ | — | URL of the Facebook Page to post to |
caption | string | ⚠️ ** | — | Post text |
hashtags | string[] | ❌ | [] | Hashtags appended to the caption (and typed as video tags) |
imageUrl | string | ⚠️ ** | — | Public URL of an image to post |
imageBase64 | string | ⚠️ ** | — | Base64-encoded image data |
videoUrl | string | ⚠️ ** | — | Public URL of a video to post (MP4) |
videoBase64 | string | ⚠️ ** | — | Base64-encoded video data (MP4) |
proxyCountry | string | ❌ | "US" | Residential proxy country code. Use "NONE" to run without a proxy |
dryRun | boolean | ❌ | false | Validate and capture proof without publishing |
⚠️ * Credentials: you must provide either
cookiesorusername(withpassword). If both are missing, the run ends with a setup guide and does not charge.⚠️ ** Content: you must provide at least one of
caption,imageUrl,imageBase64, orvideoUrl. If all are empty, the run ends with a setup guide and does not charge.
Input Example
{"cookies": "[{\"name\":\"c_user\",\"value\":\"...\",\"domain\":\".facebook.com\",\"path\":\"/\"}]","pageUrl": "https://www.facebook.com/YourPageName","caption": "Check out our new launch!","hashtags": ["launch", "newproduct"],"imageUrl": "https://example.com/banner.jpg","proxyCountry": "US","dryRun": false}
📤 Output
This actor writes its result to the Key-Value Store under the key result (not to a dataset of records). It also pushes a single diagnostic item when input is missing.
result object (in the Key-Value Store)
| Field | Type | Description |
|---|---|---|
success | boolean | Whether the post (or dry run) succeeded |
platform | string | Always "facebook" |
caption | string | First 100 chars of the published caption (on success) |
proof | string | Reference to the final proof screenshot captured |
dryRun | boolean | true when run in dry-run mode |
error | string | Error message (only present on failure) |
Success result example
{"success": true,"platform": "facebook","caption": "Check out our new launch! #launch #newproduct","proof": "facebook-12-POSTED-final","dryRun": false}
Diagnostic item (missing input)
If credentials or content are missing, the actor succeeds and pushes a single labeled guide instead of charging:
{"setup_status": "DIAGNOSTIC_GUIDE","_dataQuality": "diagnostic","message": "[DIAGNÓSTICO] No Facebook credentials provided (BYOC).","potential_causes": ["..."],"remediations": ["..."],"scrapedAt": "2026-06-06T12:00:00.000Z"}
Proof screenshots (Key-Value Store)
Screenshots are saved at each step (01-first-page, 02-spa-rendered, 04-media-uploaded, 07-caption-typed, 10-before-postar, 12-POSTED-final, and on error 99-ERROR) for auditability.
📋 Use Cases
- Page content automation — Publish marketing posts to your Facebook Page programmatically
- Cross-posting — Push the same image/video/caption you publish elsewhere to Facebook
- Campaign launches — Fire off promotional posts with hashtags inside a larger workflow
- Affiliate & e-commerce — Publish product images with descriptive captions
- Content pipelines — Use as the final "publish" step after an AI media generation actor
- Reel-style video posts — Upload MP4 videos with tags for higher discoverability
- Dry-run validation — Test the full login + composer flow before going live
❓ FAQ
Q: Is this a scraper? A: No. This is a poster — it publishes content to your own Facebook Page. It does not extract data from Facebook.
Q: How do I authenticate? A: Provide your exported Facebook session cookies as a JSON array (recommended — login is skipped), or provide username + password. Cookies and credentials are marked secret in the input schema.
Q: Do I need a Facebook API or developer app? A: No. The actor drives a real Chromium browser via Playwright, so it works without the Graph API or an app review.
Q: What media formats are supported?
A: Images (via imageUrl or imageBase64) and MP4 videos (via videoUrl or videoBase64). You can also post text only with just a caption.
Q: What does the proxy setting do?
A: proxyCountry selects an Apify residential proxy country (default US). Set it to "NONE" to run without any proxy.
Q: What is dry run?
A: With dryRun: true, the actor performs login, opens the composer, and captures proof screenshots, but does not publish — useful for validating credentials and flow.
Q: Will I be charged if my setup is incomplete? A: No. If credentials or content are missing, the run ends with a diagnostic setup guide and the Pay-Per-Event charge is not triggered.
Q: Why does posting use browser automation instead of an API? A: Facebook's Page composer flow (switch-to-Page, upload, advance, post) is best reproduced through the UI for reliable image/video/reel publishing without app-review friction.
💰 Pricing
This actor uses Pay Per Event (PPE) pricing. You are charged once per successful post.
See current pricing on the Apify Store page: 👉 https://apify.com/viralanalyzer/facebook-poster
The actor owner is exempt from charges (owner-skip), and diagnostic / setup-guide runs are never charged.
🔗 Related Actors
- Influencer Discovery Agent — Find creators across platforms
- Facebook Ads Library — Ad creative intelligence
- Instagram Reels Scraper — Reels data extraction
- TradingView Screener — Technical analysis & market scanner
📝 Changelog
v2.0 (Current)
- ✅ Inline composer flow (removed obsolete
[role="dialog"]-only selectors) - ✅ 4096 MB memory for Facebook's heavy SPA
- ✅ Image, video, and text-only posting (URL or Base64)
- ✅ Switch-to-Page context handling ("Mudar agora" / "Switch Now")
- ✅ Robust media upload via "Foto/vídeo" + file chooser, with composer fallback
- ✅ Hashtag autocomplete dismissal without closing the dialog (no Escape)
- ✅ Video "Add tags" step for engagement (2× "Avançar" flow)
- ✅ "Agora não" / "Not Now" popup dismissal after posting
- ✅ Session cookie save/reload across runs
- ✅ Residential proxy with country selection (or
NONE) - ✅ Dry-run mode with proof screenshots
- ✅ UAG-SG setup guide on missing credentials/content (no charge)
- ✅ Pay-Per-Event billing with owner-skip
📘 Facebook Page Poster — Publique Imagens, Vídeos e Texto em Páginas do Facebook
🇺🇸 English | 🇧🇷 Português
Publique posts na sua própria Página do Facebook — imagem, vídeo ou apenas texto — via automação real de navegador (Playwright + stealth). Este é um actor Bring-Your-Own-Credentials (BYOC): você fornece sua sessão do Facebook (cookies) ou login, e ele posta como sua Página. Ele reproduz o fluxo humano que o Facebook espera: abrir o compositor, enviar a mídia, digitar a legenda, avançar pelas configurações e clicar em Postar.
✨ Funcionalidades
- 🖼️ Posts de imagem — A partir de URL pública ou Base64 inline
- 🎬 Posts de vídeo — MP4 de URL pública ou Base64 inline (fluxo estilo reel)
- 📝 Posts de texto — Publicação somente com legenda (sem mídia)
- 🏷️ Hashtags — Anexadas à legenda e digitadas no campo "Adicionar tags" de vídeo
- 🔐 Autenticação BYOC — Use cookies de sessão exportados (login pulado) ou usuário + senha
- ♻️ Reuso de sessão — Cookies são salvos e recarregados entre execuções para reduzir re-logins
- 🥷 Navegador stealth — Playwright Chromium com flags anti-automação, viewport aleatório, locale pt-BR
- 🌍 Proxy residencial — Escolha o país do proxy ou desative o proxy totalmente
- 🧪 Dry run — Valide todo o fluxo e capture prints sem publicar
- 📸 Prints de prova — Cada etapa é capturada no Key-Value Store para auditoria
- 🛡️ Guia de configuração — Credenciais ou conteúdo ausentes terminam com diagnóstico rotulado (sem cobrança)
📥 Entrada
O actor lê sua entrada do objeto de input da execução. Não há campos estritamente obrigatórios no schema, mas para publicar você precisa de (a) credenciais e (b) algo para postar.
| Parâmetro | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
username | string (secreto) | ⚠️ * | — | E-mail ou telefone de login do Facebook |
password | string (secreto) | ⚠️ * | — | Senha do Facebook |
cookies | string (secreto) | ⚠️ * | — | Cookies do navegador como array JSON. Se válidos, o login é pulado |
pageUrl | string | ❌ | — | URL da Página do Facebook para postar |
caption | string | ⚠️ ** | — | Texto do post |
hashtags | string[] | ❌ | [] | Hashtags anexadas à legenda (e digitadas como tags de vídeo) |
imageUrl | string | ⚠️ ** | — | URL pública de uma imagem para postar |
imageBase64 | string | ⚠️ ** | — | Dados de imagem em Base64 |
videoUrl | string | ⚠️ ** | — | URL pública de um vídeo para postar (MP4) |
videoBase64 | string | ⚠️ ** | — | Dados de vídeo em Base64 (MP4) |
proxyCountry | string | ❌ | "US" | Código de país do proxy residencial. Use "NONE" para rodar sem proxy |
dryRun | boolean | ❌ | false | Validar e capturar prova sem publicar |
⚠️ * Credenciais: forneça ou
cookiesouusername(compassword). Se ambos faltarem, a execução termina com um guia de configuração e não cobra.⚠️ ** Conteúdo: forneça pelo menos um entre
caption,imageUrl,imageBase64ouvideoUrl. Se todos estiverem vazios, a execução termina com um guia de configuração e não cobra.
Exemplo de Entrada
{"cookies": "[{\"name\":\"c_user\",\"value\":\"...\",\"domain\":\".facebook.com\",\"path\":\"/\"}]","pageUrl": "https://www.facebook.com/SuaPagina","caption": "Confira nosso novo lançamento!","hashtags": ["lancamento", "novoproduto"],"imageUrl": "https://example.com/banner.jpg","proxyCountry": "US","dryRun": false}
📤 Saída
O actor grava o resultado no Key-Value Store sob a chave result (não em um dataset de registros). Ele também envia um único item de diagnóstico quando a entrada está incompleta.
Objeto result (no Key-Value Store)
| Campo | Tipo | Descrição |
|---|---|---|
success | boolean | Se o post (ou dry run) teve sucesso |
platform | string | Sempre "facebook" |
caption | string | Primeiros 100 caracteres da legenda publicada (no sucesso) |
proof | string | Referência ao print de prova final capturado |
dryRun | boolean | true quando em modo dry run |
error | string | Mensagem de erro (presente apenas em falha) |
Exemplo de resultado de sucesso
{"success": true,"platform": "facebook","caption": "Confira nosso novo lançamento! #lancamento #novoproduto","proof": "facebook-12-POSTED-final","dryRun": false}
Item de diagnóstico (entrada ausente)
Se credenciais ou conteúdo faltarem, o actor tem sucesso e envia um único guia rotulado em vez de cobrar:
{"setup_status": "DIAGNOSTIC_GUIDE","_dataQuality": "diagnostic","message": "[DIAGNÓSTICO] No Facebook credentials provided (BYOC).","potential_causes": ["..."],"remediations": ["..."],"scrapedAt": "2026-06-06T12:00:00.000Z"}
Prints de prova (Key-Value Store)
Prints são salvos em cada etapa (01-first-page, 02-spa-rendered, 04-media-uploaded, 07-caption-typed, 10-before-postar, 12-POSTED-final e, em erro, 99-ERROR) para auditoria.
📋 Casos de Uso
- Automação de conteúdo da Página — Publique posts de marketing na sua Página programaticamente
- Cross-posting — Publique no Facebook a mesma imagem/vídeo/legenda usada em outros canais
- Lançamentos de campanha — Dispare posts promocionais com hashtags dentro de um fluxo maior
- Afiliados & e-commerce — Publique imagens de produtos com legendas descritivas
- Pipelines de conteúdo — Use como etapa final de "publicar" após um actor de geração de mídia por IA
- Posts de vídeo estilo reel — Envie vídeos MP4 com tags para maior alcance
- Validação dry-run — Teste o fluxo completo de login + compositor antes de publicar
❓ Perguntas Frequentes
P: Isto é um scraper? R: Não. É um poster — publica conteúdo na sua própria Página do Facebook. Não extrai dados do Facebook.
P: Como faço a autenticação? R: Forneça seus cookies de sessão do Facebook como array JSON (recomendado — pula o login), ou forneça usuário + senha. Cookies e credenciais são marcados como secretos no schema de entrada.
P: Preciso de uma API ou app de desenvolvedor do Facebook? R: Não. O actor controla um navegador Chromium real via Playwright, então funciona sem a Graph API ou revisão de app.
P: Quais formatos de mídia são suportados?
R: Imagens (via imageUrl ou imageBase64) e vídeos MP4 (via videoUrl ou videoBase64). Você também pode postar apenas texto com só a caption.
P: O que faz a configuração de proxy?
R: proxyCountry seleciona o país de um proxy residencial da Apify (padrão US). Defina como "NONE" para rodar sem proxy.
P: O que é dry run?
R: Com dryRun: true, o actor faz login, abre o compositor e captura prints de prova, mas não publica — útil para validar credenciais e fluxo.
P: Serei cobrado se minha configuração estiver incompleta? R: Não. Se credenciais ou conteúdo faltarem, a execução termina com um guia de configuração e a cobrança Pay-Per-Event não é acionada.
P: Por que postar via automação de navegador em vez de API? R: O fluxo do compositor de Página do Facebook (trocar-para-Página, upload, avançar, postar) é melhor reproduzido pela interface para publicação confiável de imagem/vídeo/reel sem atrito de revisão de app.
💰 Preços
Este actor usa precificação Pay Per Event (PPE). Você é cobrado uma vez por post bem-sucedido.
Veja o preço atual na página da Apify Store: 👉 https://apify.com/viralanalyzer/facebook-poster
O dono do actor é isento de cobrança (owner-skip), e execuções de diagnóstico / guia de configuração nunca são cobradas.
🔗 Actors Relacionados
- Influencer Discovery Agent — Encontre criadores em várias plataformas
- Facebook Ads Library — Inteligência de criativos de anúncios
- Instagram Reels Scraper — Extração de dados de reels
- TradingView Screener — Análise técnica & scanner de mercado
📝 Changelog
v2.0 (Atual)
- ✅ Fluxo de compositor inline (removidos seletores obsoletos só de
[role="dialog"]) - ✅ Memória de 4096 MB para a SPA pesada do Facebook
- ✅ Postagem de imagem, vídeo e somente texto (URL ou Base64)
- ✅ Troca para contexto de Página ("Mudar agora" / "Switch Now")
- ✅ Upload robusto de mídia via "Foto/vídeo" + file chooser, com fallback no compositor
- ✅ Dispensa do autocomplete de hashtag sem fechar o diálogo (sem Escape)
- ✅ Etapa "Adicionar tags" de vídeo para engajamento (fluxo de 2× "Avançar")
- ✅ Dispensa do popup "Agora não" / "Not Now" após postar
- ✅ Salvamento/recarga de cookies de sessão entre execuções
- ✅ Proxy residencial com seleção de país (ou
NONE) - ✅ Modo dry-run com prints de prova
- ✅ Guia de configuração UAG-SG em credenciais/conteúdo ausentes (sem cobrança)
- ✅ Cobrança Pay-Per-Event com owner-skip