google-spreadsheet-acolyte
Laravel package to insert records from Google Spreadsheet
This package allows you to hassle-free insert records directly from Google Spreadsheet into your desired table.
It saves time to download the sheet into csv format and then write sql script to insert it into your database.
Pre requisite
- You need to have google account.
- Login to your account via link https://console.developers.google.com
- Create one project.
- Enable Google Sheet API
- Create Service Account
- Download Credentials.json
- Create one spreadsheet and shared it with your service account email id
Add credentials.json file to your root directory and add it in .gitignore list
Installation
You can install the package via composer:
composer require manish-manghwani/google-spreadsheet-acolyte
Usage
- Get the Google Spreadsheet Url. It may look similiar to this https://docs.google.com/spreadsheets/d/1auqTdpciifOA6PH5JbSoxRFegdgdr48icvgwqsfWqrqI/edit#gid=0
- You should have name of the credential file that was dowloaded from service account (for eg: credentials.json)
- You should have table name in which data will be inserted (for eg: dummy)
With above things in place you can run below command.
php artisan import:sheet --file-url=https://docs.google.com/spreadsheets/d/1auqTdpciifOA6PH5JbSoxRFegdgdr48icvgwqsfWqrqI/edit#gid=0 --table-name=dummy --credentials-file-name=credentials
NOTE:
- If sheet is not shared with service account email id, it will fail.
- First row of spreadsheet must be exactly same as of columns present in table.
- Spreadsheet name should not be changed it must be Sheet1
- Data to be inserted must be present in Sheet1
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email manghwani.manish1996@gmail.com instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.