๐Ÿš€ VidPipe

Upload Your Videos to TikTok Programmatically

โœ… Fully Operational

๐Ÿ” Connect Your TikTok Account

Skip the mobile app! Upload videos directly to your TikTok account using simple API calls. Perfect for:

Click below to authorize VidPipe to upload to your TikTok account:

๐Ÿ“ฅ Note: Videos will be uploaded to your TikTok inbox where you can add final touches and post them manually. This ensures you maintain full control over your content.

๐Ÿ“– How to Upload Videos

Once you have your access token from step 1, you can upload videos to your TikTok account programmatically:

๐Ÿ”‘ Smart Token Handling: You can use either your access token OR refresh token for uploads! If you provide a refresh token, we'll automatically get a fresh access token for you.
โฑ๏ธ Rate Limit: You can upload one video every 30 seconds per IP address. If you exceed this limit, you'll receive a 429 error with the remaining cooldown time.

๐Ÿ’ป Upload Your Videos

Use this Node.js example to upload videos from your automation tools or applications:

๐Ÿ“ฑ Node.js with Rate Limit Handling

import fs from 'fs';
import fetch from 'node-fetch';

async function uploadVideo(accessToken, videoPath, caption) {
  try {
    const formData = new FormData();
    const videoBuffer = fs.readFileSync(videoPath);
    const videoBlob = new Blob([videoBuffer], { type: 'video/mp4' });

    formData.append('video', videoBlob, 'video.mp4');
    formData.append('caption', caption || 'Uploaded via VidPipe');

    const response = await fetch('https://tikbridge.onrender.com/upload', {
      method: 'POST',
      headers: { 'Authorization': `Bearer ${accessToken}` }, // Replace accessToken with your actual token
      body: formData
    });

    const result = await response.json();

    if (response.status === 429) {
      console.log(`Rate limited: ${result.message}`);
      console.log(`Wait ${result.retryAfter} seconds before trying again`);
      return { success: false, rateLimited: true, retryAfter: result.retryAfter };
    }

    if (response.ok) {
      console.log('Upload successful:', result);
      return { success: true, data: result };
    } else {
      console.error('Upload failed:', result);
      return { success: false, error: result };
    }
  } catch (error) {
    console.error('Upload error:', error);
    return { success: false, error: error.message };
  }
}

// Usage example - You can use either access token OR refresh token
const myToken = 'act.XI74axcyeKsljoutizKrdEkSAyPrhsDLfCydn9IYBwme04yEzjVTgloGcajgl4686.e2'; // Access token
// OR use refresh token (starts with 'rft.') - we'll automatically get fresh access token
// const myToken = 'rft.example_refresh_token_here';
const result = await uploadVideo(
  myToken, // Works with both access tokens and refresh tokens!
  './my-video.mp4',
  'My awesome video! ๐Ÿš€'
);

if (result.rateLimited) {
  console.log(`Waiting ${result.retryAfter} seconds...`);
  setTimeout(() => {
    // Retry upload after cooldown
    uploadVideo(myToken, './my-video.mp4', 'My awesome video! ๐Ÿš€');
  }, result.retryAfter * 1000);
}

๐Ÿงช Advanced Features

Additional endpoints for troubleshooting and verifying your setup:

GET/health

Health check endpoint

curl "https://tikbridge.onrender.com/health"

POST/refresh

Generate new access token from refresh token

curl -X POST "https://tikbridge.onrender.com/refresh" \\
  -H "Content-Type: application/json" \\
  -d '{"refresh_token": "YOUR_REFRESH_TOKEN"}'

POST/debug/token

Validate TikTok access token

curl -X POST "https://tikbridge.onrender.com/debug/token" \\
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

โœ… Why Choose VidPipe?

  • ๐Ÿ”’ Secure: Your tokens are never stored, completely private
  • โšก Fast: Upload videos up to 500MB quickly
  • ๐ŸŽฏ Simple: Just 3 steps: authorize, upload, done!
  • ๐ŸŒ Universal: Works from any platform or programming language
  • ๐Ÿ“ฑ Mobile-friendly: Skip the TikTok app, upload directly

๐Ÿ”— Resources

๐Ÿ“‚ GitHub Repository โ€ข ๐Ÿ”ง TikTok Developer Portal โ€ข ๐Ÿš€ Deploy on Render

Terms of Service โ€ข Privacy Policy โ€ข Admin Dashboard

ยฉ 2024 VidPipe. Built for developers who love automation.