Connect your YouTube channel to upload Shorts directly from Apollo.
- Google account with a YouTube channel
- Google Cloud Console access (free)
- ~10 minutes for setup
Navigate to: https://console.cloud.google.com/
Sign in with the Google account that owns your YouTube channel.
- Click the project dropdown (top left, next to "Google Cloud")
- Click "New Project"
- Fill in:
- Project name:
Apollo YouTube(or any name) - Location: No organization
- Project name:
- Click "Create"
- Wait 30 seconds for project to be created
- Select your new project from the dropdown
- Go to ☰ Menu → APIs & Services → Library
- Search: "YouTube Data API v3"
- Click on the result
- Click "Enable" button
- Wait for it to activate
- Go to APIs & Services → OAuth consent screen
- User Type: External (unless you have Google Workspace)
- Click Create
Fill in required fields:
App Information:
- App name:
Apollo - User support email: your email
- App logo: (optional)
App Domain (skip):
- Application home page: (leave blank)
- Application privacy policy link: (leave blank)
- Application terms of service link: (leave blank)
Authorized domains (skip)
Developer contact information:
- Email addresses: your email
Click Save and Continue
Scopes:
- Click Save and Continue (we'll add scopes automatically)
Test users:
- Click Add Users
- Enter your Gmail address (the one with YouTube channel)
- Click Save and Continue
Summary:
- Review and click Back to Dashboard
This step is different for Windows vs Android!
- Go to APIs & Services → Credentials
- Click + Create Credentials → OAuth client ID
- Application type: Desktop app
⚠️ (very important!) - Name:
Apollo Windows - Click Create
- Your new client appears in the list
- Click the download icon (⬇) on the right
- A JSON file downloads (e.g.,
client_secret_XXX.json) - Save it somewhere accessible
In Apollo (Windows):
- Open Settings (⚙️)
- Find
▶️ YouTube API section - Click "Select client secret JSON"
- Choose the downloaded JSON file
- File is automatically loaded ✓
- Settings are saved
Before creating OAuth client, you need SHA-1.
On your development machine:
cd apollo/mobile/android
./gradlew signingReportLook for output like:
Variant: debug
Config: debug
Store: C:\Users\YourName\.android\debug.keystore
Alias: AndroidDebugKey
SHA1: 12:AB:34:CD:56:EF:78:90:12:34:56:78:90:AB:CD:EF:12:34:56:78
Copy the SHA1 value (the whole string with colons).
- Go to APIs & Services → Credentials
- Click + Create Credentials → OAuth client ID
- Application type: Android
⚠️ - Name:
Apollo Android - Package name:
com.tahasite.apollo - SHA-1 certificate fingerprint: paste your SHA1
- Click Create
For Android, credentials are automatically handled via Google Sign-In. No file to download.
In Apollo (Android):
- Go to Publish tab
- Click "Connect YouTube Account"
- Sign in with your Google account
- Grant permissions
- Done! ✓
- Open Apollo Settings
- Verify YouTube shows: "youtube_client_secret.json found ✓"
- Go to Publish tab
- Click "Connect YouTube Account"
- Browser opens → authorize
- Should return to Apollo with success
- Open Apollo
- Go to Publish tab
- Click "Connect YouTube Account"
- Google Sign-In appears
- Select your account
- Grant permissions
- Should show your email
- 10,000 units per day (resets at midnight PT)
- Video upload = 1,600 units
- You can upload ~6 videos per day for FREE
| Action | Units |
|---|---|
| Upload video | 1,600 |
| Update video | 50 |
| Delete video | 50 |
| List videos | 1 |
| Get video info | 1 |
Request quota increase: YouTube API Services Support
For your video to be detected as a Short:
| Property | Requirement |
|---|---|
| Format | MP4 |
| Aspect Ratio | 9:16 (vertical) |
| Resolution | 1080x1920 recommended |
| Duration | Under 3 minutes |
| Title | Include#Shorts |
| Frame Rate | 24-60 FPS |
Apollo automatically formats videos for Shorts.
When uploading, Apollo lets you choose:
- 🔒 Private — Only you can watch (default, safest)
- 🔗 Unlisted — Only people with link can watch
- 🌍 Public — Anyone can watch and find
Recommendation: Start with Private to test, then switch to Public.
Cause: OAuth client type is wrong.
Solution:
- Delete the current OAuth client
- Create a new one
- Must select "Desktop app" (not Web, not Mobile)
- Download new JSON
- Re-upload in Apollo
Cause: Your email is not in Test Users.
Solution:
- Go to OAuth consent screen
- Test users → Add users
- Add your Gmail
- Try again
Cause: SHA-1 fingerprint mismatch.
Solution:
- Get correct SHA-1:
./gradlew signingReport - Update in Google Cloud Console
- Wait 5 minutes for changes to propagate
- Try again
Cause: API not enabled.
Solution:
- Go to APIs & Services → Library
- Search "YouTube Data API v3"
- Click Enable
Cause: Used 10,000 units today.
Solution:
- Wait until midnight Pacific Time (resets)
- Request quota increase
- Use fewer uploads per day
Solutions:
- Verify token is not expired
- Re-authenticate: Disconnect → Connect again
- Check internet connection
- Try smaller video file
- ✅ Never share client secret JSON file
- ✅ Never commit to Git repositories
- ✅ Keep test users list minimal
- ✅ Revoke unused OAuth clients
- ✅ Monitor API usage in dashboard
- Google Cloud Console → Credentials
- Delete compromised OAuth client
- Create new one
- Update in Apollo
For personal use, Testing mode is fine!
If you want to distribute Apollo publicly with your OAuth:
- Complete OAuth consent screen
- Provide:
- Privacy policy URL
- Terms of service URL
- Application homepage
- Demo video showing usage
- Submit for verification
- Wait 2-6 weeks for approval
Not needed for personal/private use.
If you manage multiple YouTube channels:
- Sign out from Apollo (Disconnect)
- Sign in with the account owning the target channel
- Each account can be connected separately
Contact us: @main_admin_tahasite on Telegram
Response time: Usually within 24 hours