Documentação

Publicidade: comandos da CLI

Compre anúncios em uma rede que convidou você ou venda intervalos nas suas telas: redes, inventário, slots, criativos, campanhas e relatórios.

Cada comando funciona como descrito na referência da CLI: flags globais, saída JSON, códigos de saída, revisões e tentativas.

Publicidade

Compre publicidade em uma rede que convidou você ou venda intervalos de anúncios nas telas que você possui. Leia screenrig project capabilities primeiro: para comprar é necessário o recurso advertiser, para vender é preciso possuir telas. O dinheiro é relatado como strings decimais de mcr, em que 10.000.000 mcr são US$1. Execute screenrig ads COMMAND --help --json para cada flag. O fluxo de compra e venda está em Início rápido; taxas e tarifas estão em Preços.

ads networks#

Comprador: listar as redes em que este projeto foi convidado e inspecionar o inventário e os slots permitidos de uma rede.

ads networks list
ads networks show <seller-project-id>
screenrig ads networks list

ads network#

Vendedor: inspecione ou crie a própria rede deste projeto e defina sua tarifa padrão.

ads network show
ads network create --name NAME
ads network rate --rate-mcr-per-15s MCR --expect-rev REVISION
screenrig ads network rate --rate-mcr-per-15s 1000 --expect-rev 3

--name tem no máximo 120 caracteres. --rate-mcr-per-15s é um número inteiro positivo de mcr por 15 segundos de exibição concluída, e --expect-rev é a revision da rede obtida em ads network show. Uma mudança na taxa efetiva pausa as campanhas afetadas até que cada comprador aceite uma cotação nova.

ads inventory#

Vendedor: opte por incluir ou excluir uma tela própria da publicidade e descreva-a para compradores convidados.

ads inventory list
ads inventory update <screen-id> [--enabled | --disabled] [--site-name NAME]
    [--city CITY] [--region REGION] [--venue-type TYPE] [--audience-tags TOKENS]
    [--placement TEXT] [--public-description TEXT]
    [--rate-mcr-per-15s MCR | --clear-rate]
    [--impressions-per-hour N | --clear-impressions-per-hour] [--expect-rev REVISION]
screenrig ads inventory update scr_LOBBY --enabled --venue-type cafe

Flags omitidas mantêm seus valores atuais. Uma nova linha de inventário precisa de --enabled ou --disabled. --impressions-per-hour registra a sua estimativa das impressões que a tela entrega em uma hora: cada exibição concluída passa a contar essa estimativa vezes os segundos exibidos sobre 3600 como estimated_impressions em ads reports spend, ads reports delivery e ads direct report.

update precisa de pelo menos uma flag. --audience-tags aceita até 20 tags separadas por vírgulas, cada uma com no máximo 32 letras, dígitos ou sublinhados. --clear-rate devolve a tela à taxa padrão do projeto e --clear-impressions-per-hour remove a estimativa. --expect-rev substitui a revisão armazenada da linha como pré-condição e é recusado para uma tela que ainda não tem linha.

ads slots#

Vendedor: defina slots de anúncio reutilizáveis. Um slot não altera nada na tela até que sua página de slot seja colocada em uma playlist.

ads slots list
ads slots create --name NAME --accepted-media image,video
    [--max-image-duration-ms MS] [--max-video-duration-ms MS]
    [--rate-mcr-per-15s MCR | --clear-rate] [--enabled | --disabled] [--vast-tag-url URL]
ads slots update <slot-id> --expect-rev REVISION [--name NAME]
    [--accepted-media image,video] [--max-image-duration-ms MS] [--max-video-duration-ms MS]
    [--rate-mcr-per-15s MCR | --clear-rate] [--enabled | --disabled]
    [--vast-tag-url URL | --clear-vast-tag-url]
screenrig ads slots create --name "Lobby break" --accepted-media image,video
screenrig ads slots create --name "Lobby video" --accepted-media video --vast-tag-url https://ads.example.com/vast.xml
screenrig ads slots update ads_LOBBY --clear-vast-tag-url --expect-rev 2

Um slot novo é ativado, a menos que --disabled seja informado. --accepted-media é image, video ou ambos, separados por vírgulas. Os limites de duração omitidos são de 30000 ms; o limite de imagem vai de 5000 a 30000 ms e o de vídeo de 5000 a 120000 ms. --rate-mcr-per-15s é um número inteiro positivo que substitui a taxa da tela ou do projeto para este slot, e --clear-rate remove a substituição. update mantém cada campo omitido, e uma mudança na taxa efetiva pausa as campanhas afetadas até que cada comprador aceite uma cotação nova. --vast-tag-url é uma URL HTTPS de no máximo 2048 caracteres.

--vast-tag-url define a própria tag de anúncio VAST 2-4 do vendedor, tentada quando nenhuma campanha convidada preenche o slot em suas próprias telas; o slot deve aceitar vídeo. A URL é HTTPS na porta 443 ou 8443 para um host público. O backend a busca, segue até cinco Wrappers, ingere o MP4 progressivo ou WebM escolhido na mídia do projeto, e dispara Impression, creativeView e start em início aceito, complete em conclusão aceita, e Error em falha; não há rastreadores de quartil. As macros [CACHEBUSTING], [TIMESTAMP], [SCREENRIG_SCREEN_ID], [SCREENRIG_SLOT_ID] e [SCREENRIG_PAGE_ID] são expandidas, e os compradores nunca veem a tag. Em update, --vast-tag-url substitui a tag e --clear-vast-tag-url a remove; os dois não se combinam, e omitir ambos mantém a tag armazenada. ads slots list mostra vast_tag_url ao vendedor proprietário. Um slot que nada pode preencher em uma tela (nenhuma tag VAST e, em uma tela com adesão à publicidade, nenhuma campanha direta que não tenha terminado e nenhuma campanha convidada ativa, pendente ou pausada que o nomeie) fica fora do manifesto dessa tela, e screen show o lista em ad_quiet_slots, para que o Player pare de pedir. Uma campanha, tag ou adesão que possa preenchê-lo o traz de volta.

Advertising invitations#

Use os comandos compartilhados invitations acima:

screenrig invitations create --kind ad-buyer --email owner@bakery.example --screen-id scr_LOBBY --policy review_required
screenrig invitations list --kind ad-buyer
screenrig invitations revoke ID

Um convite de comprador de anúncios é enviado por e-mail, nunca por link, e exige pelo menos um --screen-id ou --slot-id (separados por vírgulas). --policy é trusted (o padrão) ou review_required.

A pessoa convidada aceita no dashboard. Uma pessoa conectada seleciona seu projeto de compra e confirma com uma prova de passkey nova. Uma pessoa sem login cria um e um projeto apenas para anunciantes durante a aceitação.

ads memberships#

Vendedor: altere ou revogue a política de revisão e escopo de inventário de um comprador admitido.

ads memberships list
ads memberships update <membership-id> --expect-rev REVISION
    [--policy trusted|review_required] [--screen-id IDS] [--slot-id IDS]
ads memberships revoke <membership-id>
screenrig ads memberships list

update mantém a política e o escopo armazenados para as flags omitidas. trusted exibe os criativos do comprador sem revisão; review_required retém cada versão de criativo para a sua decisão. --screen-id e --slot-id aceitam ids separados por vírgulas e substituem a lista inteira; um valor vazio não permite nenhum.

A revogação interrompe novas execuções de anúncios e mantém o histórico financeiro.

ads creatives#

Comprador: vincular mídia própria pronta a uma criatividade imutável com cópia aprovada.

ads creatives list
ads creatives create --media-id ID --copy TEXT
ads creatives show <creative-id>
screenrig ads creatives create --media-id med_123 --copy "Fresh bread daily"

Vincular um criativo não cobra nada e não envia a mídia novamente. Um criativo aprovado nunca muda no lugar: edite a mídia de origem e vincule um novo criativo. --copy tem no máximo 500 caracteres. show lista a revisão do criativo por cada rede de vendedor (pending, approved, rejected ou changes_requested) com o motivo do vendedor.

ads campaigns#

Comprador: criar uma campanha, precificar e ativar aceitando o orçamento.

ads campaigns list
ads campaigns show <campaign-id>
ads campaigns create <file>
ads campaigns update <campaign-id> <file> --expect-rev REVISION
ads campaigns preview <campaign-id> [--expect-rev REVISION]
ads campaigns activate <campaign-id> --quote-id ID --expect-rev REVISION
ads campaigns pause <campaign-id> --expect-rev REVISION
ads campaigns resume <campaign-id> --expect-rev REVISION
ads campaigns accept-rates <campaign-id> --quote-id ID --expect-rev REVISION
screenrig ads campaigns preview cmp_123

Um rascunho não reserva nada. preview retorna uma cotação com tempo limitado e não gasta nada; activate requer essa cotação exata. Após uma mudança na taxa do vendedor, somente accept-rates com uma cotação nova retoma a campanha.

<file> é um arquivo JSON, ou - para a entrada padrão, e update substitui um rascunho pelo documento inteiro. O rascunho informa name, daily_cap_mcr, lifetime_cap_mcr (no mínimo o limite diário), flight_start e flight_end (RFC 3339) e networks, uma entrada por rede de vendedor em que o projeto foi admitido, cada uma com seller_project_id, screen_ids, slot_ids, creative_ids e, opcionalmente, venue_types, cities, tags, dayparts e network_cap_mcr. Campos de dinheiro são strings mcr decimais, nunca números. image_duration_ms (de 5000 a 30000, dez segundos se omitido) define por quanto tempo uma imagem é exibida, e max_play_price_mcr limita o preço de uma exibição; omita para não ter teto.

Um rascunho de campanha aceita um category opcional da lista de categorias de anunciantes. Dois anúncios da mesma categoria nunca são exibidos no mesmo intervalo comercial em uma tela.

preview lê a revisão atual da campanha, a menos que --expect-rev informe uma. pause interrompe novas reservas; as exibições já iniciadas terminam e são liquidadas pelo preço reservado. resume retoma uma campanha pausada manualmente e não consegue remover uma pausa por mudança de preço.

ads direct#

Vendedor: reserve seus próprios negócios com anunciantes de fora do screenRIG nas suas próprias telas.

ads direct list
ads direct show <campaign-id>
ads direct create <file>
ads direct update <campaign-id> <file> --expect-rev REVISION
ads direct pause <campaign-id> --expect-rev REVISION
ads direct resume <campaign-id> --expect-rev REVISION
ads direct end <campaign-id> --expect-rev REVISION
ads direct availability <file>
ads direct report <campaign-id> [--from TIME] [--to TIME]
    [--format json|csv|xlsx|pdf] [--output FILE|-]
screenrig ads direct create campaign.json

Um rascunho informa name, advertiser, um category opcional, flight_start e flight_end, media_ids (de 1 a 20 das suas próprias imagens ou vídeos prontos), um goal_plays opcional, um price opcional (model cpm por mil exibições ou flat, com um amount e uma currency ISO 4217), um image_duration_ms opcional (de 5000 a 30000, dez segundos se omitido) e a segmentação: screen_ids, slot_ids, venue_types, cities, tags e dayparts (como {"days": ["mon"], "start": "11:00", "end": "14:00"}), em que uma lista vazia significa todas as telas ou espaços inscritos. Uma campanha direta preenche um intervalo comercial antes dos compradores convidados. Um objetivo é distribuído uniformemente ao longo da veiculação e é exibido primeiro enquanto está atrasado; uma campanha sem objetivo ocupa todo espaço elegível durante sua veiculação. Nenhum dinheiro passa pela screenRIG: você fatura o anunciante, e o preço dá valor ao relatório.

<file> é um arquivo JSON, ou - para a entrada padrão. category, aqui e em um rascunho de campanha, é um de alcohol, apparel, automotive, beauty, cannabis, consumer_electronics, education, entertainment, financial_services, food_and_beverage, gambling, government, grocery, health_and_pharma, home_and_garden, insurance, jobs, legal, media, political, quick_service_restaurants, real_estate, restaurants, retail, sports_and_fitness, technology, telecom, tobacco_and_vaping, travel ou utilities. update substitui todos os campos graváveis, então envie o documento inteiro. pause impede que uma campanha ocupe espaços de anúncio e resume a restaura; uma campanha com meta que ficou atrasada durante a pausa é exibida primeiro até se recuperar. end é definitivo: uma campanha encerrada não é mais exibida, não pode ser retomada e mantém seu relatório.

availability lê uma consulta com a mesma segmentação e período de veiculação e estima as exibições que você ainda pode reservar: as ocorrências recentes de espaços publicitários das telas selecionadas, menos as exibições de que seus outros objetivos diretos ainda precisam. Responde com estimated_plays, booked_plays e available_plays, e exclude_campaign_id deixa a campanha que você está editando fora de booked_plays. Um objetivo acima da estimativa retorna goal_overbooked, a menos que o rascunho defina "overbook": true.

report lista as exibições em relação ao objetivo, o ritmo, o valor, as exibições que não foram exibidas e linhas por dia UTC, tela, espaço e mídia. --from e --to aceitam um instante RFC 3339, now ou uma idade como 7d, 12h ou 30m, e por padrão abrangem o período de veiculação. --format csv, xlsx ou pdf grava as linhas em --output (padrão ./direct-report-CAMPAIGN_ID.FORMAT) e responde com seu caminho, bytes e SHA-256; com --format csv, --output - grava o CSV na saída padrão. As colunas do CSV são day, screen_id, slot_id, media_id, plays, played_ms e estimated_impressions. Um relatório JSON ou CSV lista no máximo 5000 linhas e traz o aviso direct_report_truncated quando há mais: restrinja --from e --to para obter o restante.

Criar, substituir e retomar uma campanha direta, availability e report exigem um plano que inclua campanhas diretas; os demais planos são recusados com feature_not_in_plan. screenrig project capabilities lista os recursos do plano.

ads reviews#

Vendedor: aprove, rejeite ou solicite alterações nas versões exatas dos criativos submetidos pelos compradores em review_required.

ads reviews list
ads reviews show <review-id>
ads reviews approve <review-id>
ads reviews reject <review-id> --reason TEXT
ads reviews request-changes <review-id> --note TEXT
screenrig ads reviews request-changes arv_123 --note "Use the new logo"

request-changes envia sua nota ao comprador. Para enviar a revisão, vincule a mídia revisada a um novo criativo, adicione-o a uma nova campanha e execute preview e activate com a nova cotação. A campanha substituta tem seu próprio orçamento e histórico de revisões. Pause a campanha original antes de ativar sua substituta para evitar veiculações sobrepostas. As pessoas decidem sobre os criativos na página Revisões do painel, junto com as alterações de playlists e telas.

list mostra as versões de criativo aguardando a sua decisão e show um envio com o seu criativo exato. --reason e --note são obrigatórios e têm no máximo 500 caracteres; o comprador os lê no criativo (ads creatives show). Decidir exige acesso Gerenciar.

ads reports#

Ler gastos como comprador ou entregas como vendedor.

ads reports spend --campaign-id ID [--format json|csv|xlsx|pdf] [--output FILE]
ads reports delivery --from TIMESTAMP --to TIMESTAMP
    [--format json|csv|xlsx|pdf] [--output FILE]
ads reports fill [--from TIME] [--to TIME] [--format json|csv|xlsx|pdf] [--output FILE]
screenrig ads reports delivery --from 2026-09-01T00:00:00Z --to 2026-10-01T00:00:00Z

Relatórios de entrega mostram bruto, taxa de serviço e líquido para o período. Um relatório de comprador nunca mostra outra receita do vendedor. fill mostra, para até 35 dias, quantas ocorrências de espaços publicitários suas telas solicitaram, quantas foram preenchidas por campanhas diretas, compradores convidados e sua tag VAST, e por que o restante ficou vazio: no_demand, ineligible, separated ou capped.

--format csv, xlsx ou pdf grava o relatório como arquivo em --output (padrão ./ad-spend.FORMAT, ./ad-delivery.FORMAT ou ./ad-fill.FORMAT) e responde com seu caminho, bytes e SHA-256; json é o padrão e imprime o envelope. delivery exige --from e --to como instantes RFC 3339 e lista uma linha por ocorrência concluída, no máximo 5000, com truncated definido quando há mais; os totais cobrem cada liquidação. fill aceita um instante RFC 3339, now ou uma idade como 7d, 12h ou 30m: --from assume por padrão 7 dias antes de --to, --to assume agora, com no máximo 35 dias de diferença, ampliados para horas UTC inteiras.

Outros grupos de comandos