Benjamin-Loison / YouTube-operational-API

YouTube operational API works when YouTube Data API v3 fails.
344 stars 41 forks source link

YouTube operational API

YouTube operational API works when YouTube Data API v3 fails.

API website

Install your own instance of the API:

  1. If not already hosting a website (click here if you prefer nginx), run in a terminal:

On Linux (Ubuntu, Debian and Mint):

sudo apt install apache2 php
sudo a2enmod rewrite headers

Replace AllowOverride None with AllowOverride All in <Directory /var/www/> in /etc/apache2/apache2.conf.

Then run:

sudo service apache2 restart

On Windows:

Download and run WampServer 3.

On MacOS:

On MacOS (Intel) use /usr/local/ instead of /opt/homebrew/.

brew install apache2 php

echo 'LoadModule php_module /opt/homebrew/opt/php/lib/httpd/modules/libphp.so
Include /opt/homebrew/etc/httpd/extra/httpd-php.conf' >> /opt/homebrew/etc/httpd/httpd.conf

echo '<IfModule php_module>
  <FilesMatch \.php$>
    SetHandler application/x-httpd-php
  </FilesMatch>

  <IfModule dir_module>
    DirectoryIndex index.php
  </IfModule>
</IfModule>' >> /opt/homebrew/etc/httpd/extra/httpd-php.conf

sed -i '' 's/#LoadModule rewrite_module/LoadModule rewrite_module/' /opt/homebrew/etc/httpd/httpd.conf

Replace AllowOverride none with AllowOverride all in <Directory "/opt/homebrew/var/www"> in /opt/homebrew/etc/httpd/httpd.conf.

Then run:

brew services start httpd
  1. Now that you are hosting a website, get the current working directory of your terminal into the folder that is online.
  1. Clone this repository by using:
git clone https://github.com/Benjamin-Loison/YouTube-operational-API
  1. Verify that your API instance is reachable by trying to access:

If you want me to advertise your instance (if you have opened your port, and have a fixed IP address or a domain name), please use below contacts.

Run the API with Docker

  1. Install Docker and make sure that its daemon is running.

  2. Create a .env file and update it with your preferred port:

cp .env.sample .env
  1. Start the container with docker-compose:
# start in the foreground
docker-compose up
# start in the background
docker-compose up -d
  1. Verify that your API instance is reachable by trying to access:

Contact:

Contributing:

See CONTRIBUTING.md.