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
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).
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.Ativa a API: no menu da esquerda, APIs & Services → Library → procura YouTube Data API v3 → Enable.
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.
- App information: nome da aplicação (p. ex.
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.)
Acrescenta os scopes: Google Auth Platform → Data Access → Add or remove scopes → filtra por
youtubee assinala:https://www.googleapis.com/auth/youtube.uploadhttps://www.googleapis.com/auth/youtube.readonly
→ Update → Save. Os dois são scopes "sensitive"; isso só importa para a fase 2.
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
localhostem 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 mostrarredirect_uri_mismatch, o cliente foi criado como Web application — cria antes um Desktop.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).
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.
- Abre o YouTube API Services – Audit and Quota Extension Form: https://support.google.com/youtube/contact/yt_api_form
- 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ã.
- 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
- 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.
- Google Auth Platform → Branding: acrescenta o logótipo da aplicação (opcional) e, em Authorized domains, acrescenta
socialquack.com; Application home pagehttps://socialquack.com, Privacy policyhttps://socialquack.com/privacy, Terms of servicehttps://socialquack.com/terms. Grava. - 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.
- 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.
- (0:00) Abre o Social Quack e mostra a página Channels.
- (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.
- (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.
- (0:45) Mostra a publicação a passar a published na Queue e clica no link dela.
- (1:00) Mostra o vídeo no YouTube Studio, no teu canal.
- (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 |