No description or website provided.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
sample
LICENSE
README.md
gapi.pkb
gapi.pks
gapi_apex_session.pkb
gapi_apex_session.pks
gapi_auth.pkb
gapi_auth.pks
gapi_cal.pks
gapi_cal_calendar.pkb
gapi_cal_calendar.pks
gapi_cal_event.pkb
gapi_cal_event.pks
gapi_drive.pks
gapi_drive_about.pkb
gapi_drive_about.pks
gapi_drive_change.pkb
gapi_drive_change.pks
gapi_drive_file.pkb
gapi_drive_file.pks
install.sql

README.md

pl-gapi

A PL/SQL Google API written primarily for Oracle Application Express (APEX).

Motivation

This started with wanting to figure out how to interface with Google data from APEX, and began with inserting and fetching data from Calendar. It then tranformed to interfacing with Drive - that is, being able to upload files into google drive, and storing the reference in a table. That inspired me to begin a project that is more easily integrated, with a set of packages for each Google service independent of one another.

Authorization

The design of Authorization is to return the refresh token in the URL. APEX escapes some special characters, so when storing them, it is necessary to un-escape the token to make them usable. I have been using utl_i18n.unescape_reference with success for this. For more information on authorization, please refer to the wiki.

Contributing

Please, if you have a need for any particular Google API - do extend this library and create a pull request. Each service tends to have a set of functions for each resource. So as far as package naming goes, please follow the convention: GAPI_SERVICE_RESOURCE - where SERVICE is the Google service such as Calendar, Drive, etc and RESOURCE is the component of the API.

Please also extend the sample application with a new tab for the SERVICE - with a region at the top for the authorization, and then a region below for each action, wherever possible.

Usage

This API is still in early stages of development, so usage of this API in production systems should be done so with caution.

Demo

Due to the process required to set this up, it is not possible to host a public demo on http://apex.oracle.com. However, I have a sample application which I use to test each service and to fetch a token. I encourage you to follow the installation steps in the wiki, and installing the sample application in your local environment. Please refer to samples/f100.sql

Installation

Full steps can be found on the wiki