Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Main #20

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open

Main #20

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
172 changes: 98 additions & 74 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,88 +1,112 @@
# Why?
For all my friends using my TDs who now need to store everything in it instead of their Drive. [Need help?](https://t.me/tgclonebot)

<p align="center">
<img src="https://i.imgur.com/CXy0SPB.jpg" alt="drawing" width="270" height=585/>
</p>

## Guide:
- YouTube Guide: [Google Drive Clone Bot Set-Up Tutorial | Telegram Bot Setup Guide](https://www.youtube.com/watch?v=2r3_jR7SvUo&feature=youtu.be)
- Follow the above guide for Heroku.
- If you wish to run on a VPS, Do all the stuff I did on the VPS Terminal ;)
- Wish to run anywhere else? Follow the guide till the part where I download ZIP Archive from Repl.it. Use that zip on any device you'd like to run the bot on.
- Don't forget to install requirements.txt
```
pip3 install -r requirements.txt
```
- [Adding Service Accounts to Google Group/TeamDrive](https://youtu.be/pBfsmJhYr78)

## Setting up config file (present in bot/config.py)
- **BOT_TOKEN** : The telegram bot token that you get from @BotFather
- **GDRIVE_FOLDER_ID** : This is the folder ID of the Google Drive Folder to which you want to clone.
- **OWNER_ID** : The Telegram user ID (not username) of the owner of the bot (if you do not have that, send /id to @kelverbot )
- **AUTHORISED_USERS** : The Telegram user IDs (not username) of people you wish to allow for bot access.It can also be group chat id. Write like: [123456, 4030394, -1003823820]
- **IS_TEAM_DRIVE** : (Optional field) Set to True if GDRIVE_FOLDER_ID is from a Team Drive else False or Leave it empty.
- **USE_SERVICE_ACCOUNTS**: (Optional field) (Leave empty if unsure) Whether to use service accounts or not. For this to work see "Using service accounts" section below.
- **INDEX_URL** : (Optional field) Refer to https://github.com/maple3142/GDIndex/ The URL should not have any trailing '/'

## Getting Google OAuth API credential file

- Visit the [Google Cloud Console](https://console.developers.google.com/apis/credentials)
- Go to the OAuth Consent tab, fill it, and save.
- Go to the Credentials tab and click Create Credentials -> OAuth Client ID
- Choose Other and Create.
- Use the download button to download your credentials.
- Move that file to the root of clone-bot, and rename it to credentials.json
- Visit [Google API page](https://console.developers.google.com/apis/library)
- Search for Drive and enable it if it is disabled
- Finally, run the script to generate token file (token.pickle) for Google Drive:
```
pip install google-api-python-client google-auth-httplib2 google-auth-oauthlib
# Que es lo que hace el bot TelegramGdriveClonebot
- Clonar carpetas completas de gdrive a gdrive unidad compartida
- Podras compartir archivos de gran tamaño, como videos, peliculas, documentos comprimidos, etc.
- Compartir todas tus carpetas facilmente
- hacer un clon identico a los nombres de tus documentos sin que aparezca (copia de)
- El clon se genera en segundos o minutos
- utilizar cuentas de servicio de google para que sea rapido y sobrepasar los 750 Gb hasta 75 TB.

## Herramientas usadas
- https://replit.com/ Tener cuenta en repit
- https://dashboard.heroku.com/ Tener cuenta en heroku
- https://console.developers.google.com tener cuenta gmail
- https://groups.google.com/ Un grupo en google con gmail
- https://web.telegram.org/ Tener telegram instalado en app o web
- https://github.com/ Para pasar nuestro bot a heroku

## 1.Crear nuevo proyecto, y credenciales en console google
- Ve a [Google console](https://console.developers.google.com)
- Crea un nuevo proyecto (uniqedumxbot), copiar el id del proyecto y guardarlo en un notepad
- Damos click en el panel izquierdo en la pestaña Pantalla de consentimiento, seleccionamos "Externo" y le damos click en "crear", y despues crear otra vez. Despues en tipo de aplicacion seleccionamos "Publica" ,Introducimos un nombre y le damos guardar.
- En el panel izquierdo seleccionamos biblioteca para ingresar a la libreria de APis,en el buscador ponemos "Drive" y la habilitamos, tambien "Service Usage API" y "dentity and Access Management"
- Nos dirigimos a la pestaña de Credenciales , y en crear credenciales seleccionamos "ID de cliente de OAuth",En tipo de aplicacion seleccionamos "De escritorio" y colocamos un nombre , le damos click en crear.Descargamos las credenciales en formato json y guardandolas como "credentials.json".

## 2.Clonar el repositorio en replit.com
- En [Replit](https://replit.com/) damos click en new repl e importamos el repositorio desde github.
- Seleccionamos phyton
- En la consola introducimos el siguiente comando y damos enter para que se instalen los requerimientos.
```
pip3 install -r requirements.txt
```
- Instalamos googleapiclient con el comando
```
pip install --upgrade google-api-python-client
```
## 3. Crear cuentas de servicio google
- en replit subimos el archivo credentials.json
- En la consola de repli introducimos el siguiente comando y damos enter
```
python3 generate_drive_token.py
```
# Running
- To run this bot (locally) (suggested)
- Vamos al link generado,aceptamos los permisos y copiamos el codigo generado, lo pegamos en la consola y damos enter.
- Despues el siguiente codigo a la consola y damos enter.
```
python3 -m bot
python3 gen_sa_accounts.py --quick-setup 1 --new-only
```
- Deploying to Heroku (Optional) (Not Suitable for very big Clones!)

[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://dashboard.heroku.com/new?template=https://github.com/jagrit007/Telegram-CloneBot)

- Please know that after using this button, your work isn't done. You gotta [clone heroku app](https://devcenter.heroku.com/articles/git-clone-heroku-app) and add credentials.json and token.pickle (By now you would know how to make it.) and this is the perfect time to generate service accounts if you wish to use them. After it's all done, [Push changes to Heroku (Step1-2 only).](https://docs.railsbridge.org/intro-to-rails/deploying_to_heroku_again)

**Tip: Instead of using Termux or local machine, use [repl.it](https://repl.it/), atleast it won't throw any errors in installing Python requirements. From [repl.it](https://repl.it/) you could push to a private GitHub repo and attach that to Heroku.**


# Using service accounts for uploading to avoid user rate limit
For Service Account to work, you must set USE_SERVICE_ACCOUNTS=True in config file or environment variables
Many thanks to [AutoRClone](https://github.com/xyou365/AutoRclone) for the scripts
## Generating service accounts
Step 1. Generate service accounts [What is service account](https://cloud.google.com/iam/docs/service-accounts)
---------------------------------
Let us create only the service accounts that we need.
**Warning:** abuse of this feature is not the aim of autorclone and we do **NOT** recommend that you make a lot of projects, just one project and 100 sa allow you plenty of use, its also possible that overabuse might get your projects banned by google.

## Crear bot en telegram
- Abrir la aplicacion de Telegram y buscamos @botfather o visitamos el link t.me/botfather
- iniciamos y Creamos nuevo bot con.
```
Note: 1 service account can copy around 750gb a day, 1 project makes 100 service accounts so thats 75tb a day, for most users this should easily suffice.
/start
/newbot
```
- Escoge un nombre para tu bot
- Despues de eso te enviara tus datos: (t.me/YOURBOT) & el Token de acceso HTTP API
- Copia el token generado y guardalo en el block de notas

## Lo que tienes que cambiar en el archivo ( bot/config.py)
- **BOT_TOKEN** : El token que te dio el bot que creaste.
- **GDRIVE_FOLDER_ID** : el ID de la carpeta de la unidad compartida a donde se enviaran los archivos.
- **OWNER_ID** : ID de usuario telegram:Para obtenerlo busca en telegram a @userinfobot y dale iniciar /start , te lanzara el ID.
- **AUTHORISED_USERS** : Los ID de usuarios telegram o de un grupo telegram.: [123456, 4030394, -1003823820] para obtener el ID de tu grupo telegram agrega @GroupIDbot al grupo y dale /id
- **IS_TEAM_DRIVE** : (Solo si el ID de la carpeta esta en una unidad compartida) "True" si GDRIVE_FOLDER_ID es una unidad compartida si no es asi dejalo vacio.
- **USE_SERVICE_ACCOUNTS**: le ponemos "True"
- **INDEX_URL** : lo dejamos igual

## Agregar cuentas a un grupo de google
- Crea un grupo al que le puedas agregar las cuentas en [Google groups](https://groups.google.com/)
- Para agregarlas a un grupo de google, imprime las cuentas creadas con el comando siguiente, se separaran de 10 en 10, copialas y pegalas en agregar usuarios en un grupo

`python3 gen_sa_accounts.py --quick-setup 1 --new-only`

A folder named accounts will be created which will contain keys for the service accounts created

NOTE: If you have created SAs in past from this script, you can also just re download the keys by running:
```
python3 gen_sa_accounts.py --download-keys project_id
python3 print_emails.py
```
- Despues agrega el grupo a la unidad compartida.

### Add all the service accounts to the Team Drive or folder
- Run:
## Correr el bot y descargar los archivos
- Corremos el bot con el comando
```
python3 -m bot
```
- Despues matamos el script presionando Ctrl+c en la consola e introducimos el comando, despues enter.
```
py3clean .
```
- Comprimimos y Descargamos como zip todos los archivos de repli a nuestra pc con este comando te aparecera un zip en la izquierda el cual le damos descargar.
```
zip -r uniqedumxbot.zip *
```
- descomprimimos en la pc
- Creamos un nuevo repositorio en [github](https://github.com) con el nombre deseado como privado, si tenemos privados, si no pues publico.
- Despues Subimos los archivos del bot al repositorio, checa bien la carpeta accounts ya que hay que subirla por partes (github solo acepta 99 archivos por subida)

## enviar repositorio a heroku y correr bot.
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://dashboard.heroku.com/new?template=https://github.com/abdiasriver/TelegramGdriveClonebot)
- Nos vamos a [Heroku](https://dashboard.heroku.com/) y creamos una nueva app con el nombre deseado.
- Bajamos a deployment method y seleccionamos github.
- Conectamos nuestra cuenta de github y buscamos el repositorio creado del bot.
- Activamos "automatic deploys" y bajamos para darle click en "deploy branch"
- Nos vamos a la pestaña "overview" y damos en "configure dynos" y lo activamos seleccionando edit y activamos ,despues confirm.
- Nos dirigimos a nuestro bot creado en telegram y le damos /start y veras la leyenda de inicio
- listo ya puedes enviar carpetas a tu Unidad compartida,para ver como envia /help al bot

## Como clonar carpetas a la unidad compartida.
- En la carpeta que quieras clonar, dale compartir con, e introduce el correo del grupo alq ue agregaste las cuentas de servicios.
- copia el ID de la carpeta.
- En el bot en telegram agrega
```
python3 add_to_team_drive.py -d SharedTeamDriveSrcID
/clone IDdelacarpeta
```

### Credits
- https://github.com/jagrit007
- https://github.com/lzzy12/python-aria-mirror-bot
- https://github.com/xyou365/AutoRclone
## Usar el bot en un grupo
Agrega el bot al grupo telegram del que obtuviste el ID, y el cual agregaste a **AUTHORISED_USERS**
12 changes: 12 additions & 0 deletions accounts/0.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"type": "service_account",
"project_id": "saf-8-6g-sa7y4zxnzli1ms6biuky6",
"private_key_id": "551ca5771419ade7770d61bdb97b8ca7184a3ca5",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDc5ekfWbs8mvea\ndfukLONy1r6+RJvlu5I6hCb5URE+cny87nCs0WtyKES7FeIInnO824zmGWWw9ISs\nZJQCnVNNC98UfxBiu4S2UmOmrx8mkBdlZUV9OHg9NnnMYo9f0iqPmf/dpD9FDT7c\nZjzyXHW4xJZf+iERet8FPHdB3B9pwjwBiL8+CFY5Sdg1UPZwe9NkFGua9mLYgcKJ\n2pXf/KQAzlbOFd1kcczB7vwM4io8djLmKTOetb0D7EFtTH1s+ph68shFrpmcdPtx\ntqn6YSIsS7Mlh7UlIeEaAYLh77ThISlg7Xl7+Y7VyxEEPSx9kVd2bWvk0TC9geWL\n792DQBpRAgMBAAECggEAQZCMDR4ZEPf+Hf5+3k/kgqVyoA7FJv7xfCTVXJLPR3W7\nyGgNUX4nIg8Jt23bVSuStq+Dtpg7Mrag2npP5CbGHswzPmYoeuWlkmgJ4+N+n3eN\nOi9A3NXx+lk89YkbfRloQI84/pRNozU3PzupQ1ZmKp1O9NXNEt8havBzhTzMphrP\nSGeJ0mvYrqdGPU4CJKT5TATDXmcjx75PD+Iq/3FNo2+PIeRNs6Lrgbyd1/bf5W+E\ne/RzMYV1A4ShF/hoKGNWZkR0PLijBh4RoyoSosfl6ggZUDb6V8vqD/UYL5xSfLm8\nON4hfvdWytq4Fuia4dFGSkVRXcZQiidho/4diaD3MQKBgQD7ov7+0Em9CVHG6gSe\neFNiQyhtiXti184JmUFlR+X0e5R1PF7NNvhwetfxxgyiUcOfGq1sZLUrtlg0FOKJ\nTrjPhFE+YWH0FCu8SX/Pxlc/Mp67vf3szZV9jwQMWyYTqUKPAsaB6L3+K7zyUKjC\nsekYOkVgsct3IUv66J8pLHTR2wKBgQDgunedBvbwA7KD45bkfVrZCBmkN/tQPpT+\ntv3N3k9DET03aOy2DfxYlYaK0mExa9ZL1vJ/gG3fW+Acwv64JeWSTKntr7K5PK1g\nM0XiZ31Sf8gw8D8nlpWTqObuHurfRRRxlptGk7IKPUar+OaQgiqWkyB30AGWpkQv\ncyaSBQHqQwKBgAlvFfJFqs4MgGVdtqieSDoB3I0mv1p4TsArX7lFVcixrWIrzj4R\nVoUZBemJjEW1nQjk/iV3LRejcXEaa1fMfL9C7azSB9MXwn//nWwTuoejBTJysAdl\nuboIV5WDAU1xZg5ogzqxmBXkW+QVxA3wj5WZ8anrYH5p4Cha+kSX5xVLAoGBAN+a\nidOzj1cHxsMWXBhjZlaWibTtguC4NFYxS95geetYptmQTB9lURXvSZytccnT67kw\nWb9l0W0yJI9ZsksWYhOstlPqw2Eur7ANtFZu9LJ2tIGFOsGwQopWv9hk6PxY5tuS\nqFOUN82aZMxOb1OQQMHsCJ1OWZZFP4kbAWC/HMWzAoGATqm+PM+2TTq5yIeodf1U\nknGNiPXBV+WAsnfDX3YIEY+MyJ2FZDfFwxhAoInTjxjE5JLF3oNmwD9p2paCX+um\n0wK/Hsb0rSSVtXZNvL5RqldoDoW73pBCdjW/LKK+v9odd6zKAd83nAg2/XDgAA8s\nT7EQiiPJfK59MMPNmf9F2aE=\n-----END PRIVATE KEY-----\n",
"client_email": "mfc-wk8n4lel9kt570b1faknnxsis8@saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com",
"client_id": "103202370131241892809",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/mfc-wk8n4lel9kt570b1faknnxsis8%40saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com"
}
12 changes: 12 additions & 0 deletions accounts/1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"type": "service_account",
"project_id": "saf-8-6g-sa7y4zxnzli1ms6biuky6",
"private_key_id": "ee20fdd07f7a425bc2a728e898d778ca6c07df2f",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDLtJmL2yuY63rn\nLRQ47OwQaxCxrjn7wARiKAE3MJMRY6b+OUtsoTyCAxQvzQaVBUDIw9PpUvQ8kAmQ\nCJXfSPnAy6i25lDA0+DgknhScsPH3LNDfOOuvZCBgsuaQS5h9m+nn9CwmA9BuD+k\n/0t+Fh6NDb+AuNLGcK+xxs3pZXWo2/5FCyeXbSXTR50SHJaGw+B4tSKQz1pLmN4J\nz4Sib/y6WccpBjXdTeRT+NYDlM8R2XelztUqtBKd/cdZhZnaDPEmRTVVc+DABVxe\n3S2Du6WXcdhsAmFirhs7SLq3PSbLwXPkirX2GPOJWxtVNpxif01iQvVVAsFexUa5\nbaLOvpBBAgMBAAECggEADT6HwS0Vz5J34jHvH6hfzM15P2QphvG8Fzmsoo748Od+\nwwasnbp5+aYDmPwGkofN53+79m6bTJi81m2IeQUAoAVdyc59r5vXAiLjydCGZCc4\nTIoBL6pJi/IaFMRqJJpmNgrRAbpRO5+kG7ExklgT0m3zZoYdxiMreS6I0sTy+nB9\njHdzP7hMLEalueTwPsnlFWBP+DRwbNBtIo0D+67Ju6tudJistKlA1jJLG+aRfFxg\nj2QJxjsbqBbDWM2kzus4IiBpffnzWZ0+I6lDmiiU9N4W51pnAh87S59idEuOom1q\nfNWkoxLlioCc3ChSIqktT34sU4quZsOYqETXAaVQcQKBgQDmf6HFh0G8YAAchsU/\nxvQOnXgktIyeLg+JaJ8+8Hyh12mkkoO78qz+m71j9DEDTuaw97U2oqSFHetHvVNQ\ndEnREf1Q1FRaNMFXhqQhQXezm8LBIRRLRazt/zQYxWHVC2EbC43Lq8G9LHPuUgw3\nuY5lUzc3d1gBeAPl3qJqblMGPQKBgQDiPhytoiFx8nqhQVfPpW2oNG7WS/wLC4V9\nEJFE30O3gIR28DN0Ai6n3tsPKDjgMWIb07vx5/SGCd6+XAgiT9TYgN9RC5SZ+dZE\nmFVzJm/6ESEyPe80yFZ3BXy/CujIDKy2rVy20asbXPQw/c7BAPBtdKv8Pu+LXWnB\nth2DU7lWVQKBgQDX9mXACUaSFPCFydAuPV6WAvx6h5/o5Qcxm5D5C6H6kTYuOAit\npGZp98mvSTBTBS4oSS7EjgbPooS7pqvVCd/Pv6c0gHy4OA2e0EwfzJM2+Y20HiZB\nkHrCUwag3u8XCZ5mFKE6Xyca8/d7J+zCmVzNmvZ1RaBzX9tnGP3b8ppfkQKBgAxD\n88gSDyAfVjih00HlpRFGbm/dxLdQk5cZK9cBB6nOJOBR22hBqgfd1CB5PMQiyT/a\n9ciCm8YciN/nG2XI0DBApFq/dvn2CoDDhXZtsgprnVIc+3fwGIfxWzb8P2yBC2gH\n9AvRSCZ+npp9WBUsmNxGRACz5Ma4dMBUwDrbciPVAoGBAJAA4NDqDrBPtUFPJ8vH\nj48//jM8ntZF5muPewxi9zFuuFXWSsr2w8xmCpK4vGxsy1mbfuZjuCs8wplteFs+\nVL3sjXbashdm33G46GXwU/9uqzeBf8FLhQfRI7zgk6hLLPjp3xg4bpihGj7CQZdJ\n4z+GlxpdpTn8ZPdS7585QX1h\n-----END PRIVATE KEY-----\n",
"client_email": "mfc-1ewo0ta9k776rm0rpwjf49w8vk@saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com",
"client_id": "104622720808438200694",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/mfc-1ewo0ta9k776rm0rpwjf49w8vk%40saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com"
}
12 changes: 12 additions & 0 deletions accounts/10.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"type": "service_account",
"project_id": "saf-8-6g-sa7y4zxnzli1ms6biuky6",
"private_key_id": "143f67e4ec04ff3af85d7b798ffa618600778c37",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDXOx+8vx1y8bvW\n3fi7Y8qNqd0mHZxBmiWRZ4WMjoV3m0bXxnRvur1UGcS94VDH5mKN+Q+iRLIqkhjU\nFsmvA3iZqr2a+ryM/ohqHM+AJLi4ew/TKthnib2jSKswnKKEmlbaS2OH7pvVnqye\n4F22AnagGYfbBUd3FkiXzR6f1ozn4Ru6z7Jh9s8Gr0ucIf/6k3WCwIj63bP0m+3o\nlINcLIhEqxxg9PrCQ6M2tVO5Y06QpngByHreHunYR2jHroNkPWXNM2dgrMB+BqOl\nllrjaIQpCF1DxthvZzfH7iNYphsqa8tz6zeFPC3ua1BKiUEQ8ZuwWfVR/JKKKCmY\nXD+bJGc5AgMBAAECggEAJS0ZNkjslUYb4+lDZVq/SejlQggrTUmK46q17qlPdHFl\nsy+cPRBMU5J/4Sxh/6VTsKIsiSLEg4Xos/mbrJc05ZYQWgylNNViSrHfRYsSPQtE\nmHz2FCw+jU2oBCWKDM174wjSkFAuqp9VwbuPdDjItK60QKiQx4kZ0N6lQ4aToBl4\nqWRuG8IPb6F0lrIvWkuEwaG/a7UoBQBN60c669Kr77s7RbqWCM9r3uarSdHYWsae\nHxLaCqi5myfk1CtCJ83CuoBxI2f13dWsXYsteHrg1JGFSgNnw0lsOI79Qf5KfIVS\n9isRwZ8eYDZlfypEOkfpufgrXE2mQg2IgmdEVVShgQKBgQD5zR1lHB+sNM3GvQgz\nK8poj84CS+xW1WQd2xcVfEpJk6JC6tI4Xl8XCNNjExJ504spunBADJ1OA2Qs6/7i\n5I09FVTk11E6thTBiop/JhUcGx1AQXffOctcu89gmOH9vpquAs/sMsnPr8SB4dGF\nXLdQ4Xctr1IWAOqtK/9bkKW+zQKBgQDckmX3JrfyHU3LPtWjRqtmv8f8hN29gLnT\nxV4rxSmIRWggLdEUc1QRjeSas8TAMLyqPNRQlb2TyI0d6ihWbwuli9WQBLgfyvC/\nejhL05In1zpQT10507R4w3/IVdkuXSqudayS3BsqVhAnHUeq9Oco7wvopHPKhM/4\n5ZVdsgDyHQKBgB10wnKZzmJQF7PHtp/SGhwaWQCMU2Ip55RdsWsnLNtgPVIGvqNG\n/Y+JyuNz7EnRWCejhHkJA8OfQsDJU1UN/lmlmk0h1sJFlkz8OTilFPgreleJYMlB\n12kn/Fw3qu5w+2xpiHshwgprf5CRQFOpizROYe9RLSzLDuE8vu/dLq5BAoGADexr\n5VsbV3xEEeVohQMMBNNsY2Nbv/+lO1oFJMwwX/rJpOZfgWP6VZVYbe+VJvCsqC5o\n1KFvMyoAxnemjjY6TPvzwkCaAt/DrMKhVSAI5NzwQGuSHflgNhNZOKM6r3OQIy0o\ndKjSSizenil6Aa+t++aDIO9oo8sYecS8VgrLhn0CgYAz1pcHParAnuS4UNKXFSrV\nHRtLKW1OCxL/gRzw+R1d0rQlQ1e17dfVS9t3aUecXVTogaNhhRia4xpq54o+M4MG\nYf0bj/EnMmpOXmopeHbtZt9srPYTftfKmTG605NfIw6YQWZP9uoFUpbw7XsJX7Jp\ngAWWwVwQ/E3n6Nzhan0Qcw==\n-----END PRIVATE KEY-----\n",
"client_email": "mfc-m86idv79ly21gd8lduy0m3x00g@saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com",
"client_id": "115222022741729846427",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/mfc-m86idv79ly21gd8lduy0m3x00g%40saf-8-6g-sa7y4zxnzli1ms6biuky6.iam.gserviceaccount.com"
}
Loading