Connect Your Account

Go to Settings, find YouTube under Connected Accounts, and click Connect. Google opens in a new window and asks you to approve the connection. That is the whole setup.

Your beats upload to your own YouTube channel, and you can disconnect at any time from the same screen.

Using Your Own Google Cloud App

This is optional. BeatOps connects using its own Google app, so most people never need this. Set up your own app if you want uploads to run on your own YouTube API quota instead of BeatOps' shared capacity, or if you would rather keep the sign-in entirely on your machine.

This takes about 5 minutes, it's free, and you only do it once. All you need is a Google account.

Heads up: Google recently renamed the "OAuth consent screen" to "Google Auth Platform" (under "APIs & Services"). The steps below use the current names.

  1. Create a project
    Go to console.cloud.google.com, sign in, then click "Select a project" > "New Project" and name it "BeatOps".
  2. Enable the API
    Go to "APIs & Services" > "Library" and enable "YouTube Data API v3". While you're there, optionally also enable "YouTube Analytics API" — without it uploads still work, but the Analytics section in BeatOps stays empty.
  3. Set up the consent screen
    In the left menu, open "APIs & Services" → "Google Auth Platform" and click the "Get started" button. Enter an app name and your email, and pick "External" as the audience. One-time, project-wide setup, no scopes needed.
    Older projects show this as "OAuth consent screen" instead of "Google Auth Platform". Google is renaming it and rolls that out per project, so use whichever of the two your console shows: it is the same screen.
  4. Publish the app — don't skip this
    Still in "Google Auth Platform", open the "Audience" tab and click the "Publish app" button so the status changes to "In production". If you leave it on "Testing", Google disconnects your YouTube every 7 days. No Google verification needed — the "unverified" warning you'll see in step 6 is expected and safe.
  5. Create your credentials
    Still in "Google Auth Platform", open the "Clients" tab and click "Create client". Set the application type to "Desktop app" and click Create. Copy the Client ID and Client Secret from the pop-up — the secret is only shown once.
  6. Add them to BeatOps and connect
    In BeatOps, go to Settings > API Keys > YouTube, paste your Client ID and Client Secret, and click Connect. Google shows a "Google hasn't verified this app" screen — that's expected for your own project: click "Advanced""Go to [your app] (unsafe)" to finish.

Quota Information

With your own credentials, YouTube gives your project its own upload allowance of about 100 uploads per day, separate from the 10,000 units per day the other API calls share. That is far more than the default connection will ever need, which is why this path is optional.

You can monitor your quota usage in BeatOps Settings > API Keys > YouTube section.

Troubleshooting

YouTube disconnects / stops working after about a week

Your OAuth app is still on "Testing", where Google expires access every 7 days. Go to "APIs & Services" > "Google Auth Platform" > Audience, set the publishing status to "In production" ("Publish app"), then reconnect once in BeatOps.

"Google hasn’t verified this app" warning

Expected for your own project — you don’t need verification. Click "Advanced" > "Go to [your app] (unsafe)" to continue. You’re authorizing your own app to access your own channel.

"Access denied" during OAuth

Make sure you’re signed in with the same Google account that owns the project, and that you published the app to "In production" (step 4).

Secret not showing

Secrets are only shown once at creation. If you missed it, create new credentials from the Credentials page.

Authorization error: redirect_uri_mismatch

Make sure you selected "Desktop app" as the application type, not "Web application".

Uploads work but the Analytics section stays empty

The YouTube Analytics API is not enabled in your Google Cloud project. Go to "APIs & Services" > "Library", search for "YouTube Analytics API" and click Enable. Wait a few minutes, then reopen the Analytics section in BeatOps.

Security

With the default connection, BeatOps' server performs the sign-in exchange with Google but stores nothing: your tokens live encrypted on your own computer. If you use your own app, your credentials also stay encrypted on your machine and the sign-in never touches BeatOps servers at all.