What the integration does
ClippingSpace turns a long video into short clips. Publishing those clips is the last step, and connecting a YouTube channel is what makes that step automatic instead of a manual download-and-reupload for every clip.
Connecting a channel gives you three things, and nothing else:
- Publishing. Send a finished clip to your channel now, or put it in the scheduler and have it go out at a time you chose.
- Identification. See the channel name and avatar of the account you connected, so you can tell two channels apart before you schedule to one of them.
- Results. See the views, likes and comments on the clips ClippingSpace published, next to the clip that produced them. Only on videos we uploaded, and only counts YouTube shows publicly anyway.
Connecting a channel is optional. Every other part of ClippingSpace, importing, transcribing, clipping, captioning and downloading, works without ever authorising Google.
Scopes we request
These are the exact OAuth scopes on our consent screen. We ask for the narrowest set that makes the features above work, and each is requested only when you connect a channel, never at sign-up.
Upload videos to your channel
Sensitivehttps://www.googleapis.com/auth/youtube.upload
- Why we need it
- Publishing a finished clip to the channel you connected, either straight away or at a time you picked in the scheduler. Without it ClippingSpace can only hand you a file to upload by hand.
- Endpoints called
- videos.insert
- What it stores
- The YouTube video id and watch URL of each video we uploaded for you, its upload time, and whether the upload succeeded or failed. Never the video file itself once the upload finishes.
View your YouTube account
Sensitivehttps://www.googleapis.com/auth/youtube.readonly
- Why we need it
- Showing which channel is connected, so you can tell two channels apart before you schedule a clip to one of them, and reading the view, like and comment counts on the clips ClippingSpace published so you can see which ones worked.
- Endpoints called
- channels.list, videos.list
- What it stores
- Channel id, channel title, handle and avatar URL, plus the view, like and comment count for each video ClippingSpace uploaded for you. Nothing about videos we did not upload, and no data about anyone who watches your channel.
How a clip reaches YouTube
- You press Connect YouTube in ClippingSpace and are sent to Google's own consent screen. We never see your Google password, and there is no field anywhere in ClippingSpace that asks for one.
- Google returns an authorisation code to
https://clippingspace.tech/api/social/callback/youtube. We exchange it for an access token and a refresh token, encrypt both, and store them against your ClippingSpace account. - We call
channels.listonce to learn the channel id, title and avatar, so the app can show you which channel is connected. - When a clip is due, our worker streams the rendered video file to
videos.insert. The file is the clip ClippingSpace rendered for you, with the title, description, tags, privacy setting and publish time you chose. - YouTube returns a video id. We store the id and the watch URL so the clip in your library links to the live video.
- About once an hour we call
videos.listfor the ids we stored, and cache the view, like and comment counts so the schedule can show them without calling YouTube on every page load. The ids come from our own records, never from a search, so a video ClippingSpace did not upload is never requested. Nothing edits or deletes the video.
What we store
Everything below is held in our database in the United Kingdom, tied to your ClippingSpace account, and reachable only by you when signed in.
| What | Why it is kept | How it is protected |
|---|---|---|
| OAuth access and refresh tokens | Uploading on a schedule means acting while you are not at the keyboard, which needs a refresh token. | Encrypted at rest with AES-256-GCM under a key held outside the database. Never sent to your browser and never written to logs. |
| Channel id, title, handle, avatar URL | So the app can show which channel is connected rather than an opaque id. | Ordinary database record, refreshed from YouTube at least every 30 days. |
| Video ids and watch URLs we created | To link a clip in your library to the live video it became, and to ask for its counts later. | Ordinary database record. |
| View, like and comment counts | To show how a published clip did without calling YouTube every time you open the page. | Public totals only, for videos we uploaded. Refreshed hourly and deleted if they ever go 30 days without a refresh. |
We store no YouTube audiovisual content. The only video file involved is the clip ClippingSpace rendered from the source you supplied, and after a successful upload that file is deleted from our storage unless another scheduled post still needs it.
Refreshing and deleting
The YouTube API Services Terms require API clients to refresh stored YouTube data at least every 30 days or delete it. We do both:
- A background job re-reads the channel details and the cached counts on a rolling schedule well inside the 30 day window.
- Any cached YouTube record that has not been refreshed within 30 days is deleted rather than shown stale.
- If Google tells us a grant has been revoked, we delete the stored tokens and the cached YouTube data immediately and mark the channel as disconnected in the app.
Revoking access
You can cut off our access at any time, by either route:
- Inside ClippingSpace: Settings, then Connected accounts, then Disconnect. This deletes the stored tokens and the cached YouTube data, and asks Google to revoke the grant as well.
- At Google: open Google's security settings page (https://myaccount.google.com/permissions), find ClippingSpace in the list of third-party apps with account access, and remove it.
Either route ends our access. Videos already published stay on your channel and remain entirely yours; revoking access does not remove them, and we could not remove them if we wanted to, because we never ask for a scope that would allow it.
To delete the ClippingSpace account itself, and everything in it, see Delete your data.
What we never do
- We never sell, rent or share your YouTube data, and we never pass it to an advertising network or a data broker.
- We never use your YouTube data to build a profile of you, to train a machine learning model, or for any purpose other than the features described on this page.
- We never aggregate YouTube data across accounts or serve it to anyone other than the account holder it belongs to.
- We never separate, modify or interfere with adverts served in the YouTube player, and we never promote a video for payment through the API.
- We never store YouTube audiovisual content, and we never make it available for offline playback.
Required terms and policies
By using the YouTube features in ClippingSpace you are also agreeing to YouTube's own terms, and your data at Google is handled under Google's privacy policy:
- YouTube Terms of Service (https://www.youtube.com/t/terms)
- Google Privacy Policy (https://policies.google.com/privacy)
- YouTube API Services Terms of Service, which ClippingSpace is bound by as an API client
- Our own privacy policy and terms of service
Contact
Questions about this integration, or a request about YouTube data we hold for you, go to support@platechecks.com. We aim to answer within two working days. More ways to reach us are on the support page.