Todos os guias

Ligar o YouTube ao Social Quack — o guia completo

O YouTube funciona como o TikTok: crias uma pequena aplicação de programador tua na consola da Google, ligas em poucos minutos e podes carregar vídeos logo — mas a Google mantém esses carregamentos privados até ter revisto o teu projeto. Esta página percorre as duas metades, com todas as respostas prontas a colar. Só fazes isto uma vez.

Preferes saltar a revisão da Google? Liga antes através do Zernio: colas uma chave, inicias sessão e carregas — uns minutos, com carregamentos públicos desde o primeiro dia. Vê o guia do Zernio. Esta página é o caminho em que fazes tudo tu, com o teu próprio projeto do Google Cloud.

Duas fases, e podes começar a carregar vídeos logo depois da fase 1:

Fase O que ganhas Tempo
1. Criar a aplicação Ligas o teu canal e carregas vídeos — mas o YouTube põe todos os vídeos em Private até à fase 2, e a ligação tem de ser renovada de 7 em 7 dias ~10 min
2. Passar a revisão Carregamentos Public e Unlisted, e uma ligação que não cai ~20 min do teu tempo, depois a revisão da Google

Os Shorts não precisam de nada especial: um vídeo vertical com menos de 3 minutos é automaticamente um Short.

Fase 1 — criar o teu projeto do Google Cloud e ligar

  1. Vai a https://console.cloud.google.com e inicia sessão com a conta Google dona do teu canal do YouTube (ou com qualquer conta Google — escolhes o canal mais tarde).

  2. Cria um projeto: clica no seletor de projetos no topo → New project → dá-lhe um nome (p. ex. My Social Quack) → Create, e confirma que fica selecionado.

  3. Ativa a API: no menu da esquerda, APIs & Services → Library → procura YouTube Data API v3 → Enable.

  4. Configura o ecrã de consentimento: no menu da esquerda, APIs & Services → Google Auth Platform (os projetos mais antigos mostram OAuth consent screen) → Get started:

    • App information: nome da aplicação (p. ex. My Social Quack), user support email = o teu endereço.
    • Audience: External.
    • Contact information: o teu endereço outra vez → aceita → Create.
  5. Acrescenta-te como utilizador de teste: Google Auth Platform → Audience → Test users → Add users → o teu endereço Google → Save. (Enquanto a aplicação estiver em Testing, só os utilizadores de teste conseguem ligar-se.)

  6. Acrescenta os scopes: Google Auth Platform → Data Access → Add or remove scopes → filtra por youtube e assinala:

    • https://www.googleapis.com/auth/youtube.upload
    • https://www.googleapis.com/auth/youtube.readonly

    → Update → Save. Os dois são scopes "sensitive"; isso só importa para a fase 2.

  7. Cria as credenciais: Google Auth Platform → Clients → Create client → Application type Desktop app → dá-lhe um nome → Create. Copia o Client ID e o Client secret (também os podes descarregar em JSON).

    Porquê Desktop app? O Social Quack corre no teu próprio computador, e o tipo de cliente Desktop da Google aceita o endereço localhost em que o Social Quack está à escuta, sem teres de registar um site. Neste tipo de cliente não há redirect URI para acrescentar. Se a Google alguma vez mostrar redirect_uri_mismatch, o cliente foi criado como Web application — cria antes um Desktop.

  8. No Social Quack: Channels → YouTube → Set up keys ▾ → Set up app keys → cola o Client ID e o secret → Connect (ligar). O navegador abre o início de sessão da Google: escolhe a conta, escolhe o canal se to perguntar e, no ecrã "Google hasn't verified this app", clica em Continue (o programador és tu — na fase 1 isto é o esperado). Assinala as duas permissões → Continue. O teu canal aparece em Connected (ligadas).

  9. Carrega um vídeo de teste a partir do Compose: anexa o vídeo, assinala o canal do YouTube e preenche o painel YouTube options (opções do YouTube) que aparece — título, visibilidade, a declaração made for kids, tags. Publica já ou agenda. Abre o YouTube Studio: o vídeo está lá — como Private, seja qual for a visibilidade que escolheste. É a regra da Google para projetos não revistos (ver a fase 2), não um erro do Social Quack.

Duas coisas a saber enquanto estás na fase 1:

  • Volta a ligar de 7 em 7 dias. A Google faz caducar a ligação de qualquer aplicação em Testing ao fim de 7 dias. O Social Quack avisa-te em Channels quando isso acontece; clica outra vez em Connect. A fase 2 acaba com isto.
  • Quota: um projeto novo pode carregar 100 vídeos por dia e gastar 10 000 unidades noutras chamadas (uma miniatura custa 50). Chega bem para uma pessoa ou uma equipa pequena; as agências podem pedir mais na fase 2.

Fase 2 — passar a revisão (carregamentos públicos, ligação permanente)

Há duas revisões separadas, feitas por duas equipas diferentes da Google. Faz as duas; cada uma é um formulário.

A. Auditoria de conformidade da API do YouTube — acaba com a regra do "só privado"

Todos os projetos criados depois de 28 de julho de 2020 têm os carregamentos presos em Private até o YouTube os auditar quanto ao cumprimento dos YouTube API Services Terms of Service.

  1. Abre o YouTube API Services – Audit and Quota Extension Form: https://support.google.com/youtube/contact/yt_api_form
  2. Preenche-o com as respostas para copiar e colar mais abaixo. Onde te pedir o cliente da API, diz que é uma ferramenta de agendamento pessoal para computador, usada só no teu próprio canal; onde te pedir uma demonstração, anexa a gravação de ecrã.
  3. Se quiseres mais de 100 carregamentos por dia, pede o aumento de quota no mesmo formulário e diz quantos.

Recebes um email quando a auditoria passar. A partir daí, a visibilidade que escolhes no Social Quack (Public / Unlisted / Private) é a que o YouTube usa.

B. Verificação da aplicação OAuth — acaba com as religações de 7 em 7 dias e com o ecrã de aviso

  1. Google Auth Platform → Audience → Publish app → confirma. A tua aplicação passa a estar In production. A partir daqui as ligações deixam de caducar ao fim de 7 dias. Até a verificação terminar, o início de sessão continua a mostrar "Google hasn't verified this app" — clica em Advanced → Go to (your app name) para continuar; a Google deixa até 100 pessoas fazerem isso em cada aplicação não verificada, muito mais do que um canal precisa.
  2. Google Auth Platform → Branding: acrescenta o logótipo da aplicação (opcional) e, em Authorized domains, acrescenta socialquack.com; Application home page https://socialquack.com, Privacy policy https://socialquack.com/privacy, Terms of service https://socialquack.com/terms. Grava.
  3. Google Auth Platform → Verification Center → Prepare for verification → confere os dados → em cada scope cola a justificação das respostas para copiar e colar → acrescenta o link para o teu vídeo de demonstração (carrega-o no YouTube como Unlisted, ou no Drive) → Submit for verification.
  4. A Google envia-te as perguntas e o resultado por email. A verificação de uma pequena aplicação pessoal costuma ser aprovada, desde que o vídeo mostre o ecrã de consentimento e cada permissão a ser usada.

Podes saltar a B por completo e viver com o ecrã de aviso e o clique em Advanced → Go to app — é uma escolha pessoal. Não podes saltar a A se quiseres carregamentos públicos.

Respostas para copiar e colar

What does your application do? (o que faz a tua aplicação?)

Personal social-media scheduling tool. I write and schedule posts on my own computer (Social Quack, a self-hosted scheduler that runs locally on my Mac/PC) and it uploads them to my own YouTube channel at the scheduled time. Single user: me. The application never accesses other users' data, does not read comments or analytics, and stores nothing on any server — access tokens are kept encrypted on my computer only and deleted when I disconnect the channel.

How is each scope used? (como é usado cada scope?)

youtube.upload — uploads the video file for a post I created and scheduled myself, with the title, description, tags and visibility I chose, and sets the thumbnail I attached.

youtube.readonly — reads my own channel's name and avatar once, to show which channel is connected in the app.

API client / platform → Desktop application installed on the user's own computer; website https://socialquack.com.

Expected number of users → 1 (my own account). Quota → the default is enough (ou, se precisares de mais, indica quantos carregamentos por dia).

Do you display or store YouTube data? → No. The app only uploads; it shows the channel name in its own settings page and stores nothing about other users.

O vídeo de demonstração — o que gravar

Uma gravação de ecrã de 60–90 segundos, feita de uma vez, sem narração. Mac: ⌘⇧5 ou QuickTime → New Screen Recording.

  1. (0:00) Abre o Social Quack e mostra a página Channels.
  2. (0:05) Clica em Connect no YouTube. O início de sessão da Google abre no navegador — mostra o ecrã de consentimento com as duas permissões e clica em Continue. Mostra o Social Quack com o canal já em Connected.
  3. (0:25) Compose: anexa um vídeo curto, assinala o canal do YouTube, preenche o painel YouTube options (título, visibilidade, made-for-kids) e clica em Post now.
  4. (0:45) Mostra a publicação a passar a published na Queue e clica no link dela.
  5. (1:00) Mostra o vídeo no YouTube Studio, no teu canal.
  6. (1:15, opcional) Channels → Remove no canal do YouTube, para mostrar que desligar revoga o acesso.

Se alguma coisa correr mal

O que vês O que significa Faz isto
access_denied / "app is currently being tested" no início de sessão da Google A tua conta Google não é utilizador de teste, ou iniciaste sessão com outra conta Google Auth Platform → Audience → Test users → acrescenta o endereço exato e liga outra vez
redirect_uri_mismatch O cliente OAuth é do tipo Web application Cria um cliente novo do tipo Desktop app e cola o ID/secret dele
"Google hasn't verified this app" Normal antes da verificação Continue (utilizador de teste) ou Advanced → Go to app (aplicação publicada)
A ligação deixa de funcionar ao fim de uma semana (invalid_grant) A aplicação está em Testing Liga outra vez; ou publica a aplicação (fase 2 B, passo 1) para acabar com isto
O vídeo é carregado mas fica Private, apesar de teres escolhido Public O projeto ainda não foi auditado Fase 2 A — a auditoria de conformidade
quotaExceeded 100 carregamentos hoje, ou 10 000 unidades noutras chamadas Espera pela meia-noite da hora do Pacífico, ou pede mais no formulário da auditoria
A miniatura não foi aplicada A conta do YouTube não está verificada por telemóvel youtube.com/verify — o carregamento seguinte já a aplica
forbidden ao carregar com uma Brand Account Escolheste o canal errado ao iniciar sessão Channels → Remove → Connect outra vez e escolhe o canal certo

Encravado nalgum passo? Escreve para [email protected] e uma pessoa responde-te.