gapitoken

WebJar for gapitoken

License

License

MIT
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

gapitoken
Last Version

Last Version

0.1.5
Release Date

Release Date

Type

Type

jar
Description

Description

gapitoken
WebJar for gapitoken
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/bsphere/node-gapitoken

Download gapitoken

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/gapitoken/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>gapitoken</artifactId>
    <version>0.1.5</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/gapitoken/
implementation 'org.webjars.npm:gapitoken:0.1.5'
// https://jarcasting.com/artifacts/org.webjars.npm/gapitoken/
implementation ("org.webjars.npm:gapitoken:0.1.5")
'org.webjars.npm:gapitoken:jar:0.1.5'
<dependency org="org.webjars.npm" name="gapitoken" rev="0.1.5">
  <artifact name="gapitoken" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='gapitoken', version='0.1.5')
)
libraryDependencies += "org.webjars.npm" % "gapitoken" % "0.1.5"
[org.webjars.npm/gapitoken "0.1.5"]

Dependencies

compile (2)

Group / Artifact Type Version
org.webjars.npm : jws jar [3.0.0,3.1)
org.webjars.npm : request jar [2.54.0,3)

Project Modules

There are no modules declared in this project.

node-gapitoken

Node.js module for Google API service account authorization (Server to Server flow).

Build Status

Installation

npm install gapitoken

Usage

var GAPI = require('gapitoken');

var gapi = new GAPI({
    iss: 'service account email address from Google API console',
    scope: 'space delimited list of requested scopes',
    keyFile: 'path to private_key.pem'
}, function(err) {
   if (err) { return console.log(err); }

   gapi.getToken(function(err, token) {
       if (err) { return console.log(err); }
       console.log(token);
   });     
});

Another option is to pass the private key as a string

var key = "-----BEGIN RSA PRIVATE KEY-----\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n\
-----END RSA PRIVATE KEY-----";

var gapi = new GAPI({
    iss: 'service account email address from Google API console',
    scope: 'space delimited list of requested scopes',
    key: key
}, function() {
   gapi.getToken(function(err, token) {
       if (err) { return console.log(err); }
       console.log(token);
   });     
});

Creating a Private key file

  1. Login to Google API Console, and under "API Access" create a "service account" for your project.

  2. Download the .p12 private key file

  3. Convert the .p12 file to .pem: openssl pkcs12 -in key.p12 -out key.pem -nocerts

NOTE: You must set a passphrase for the .pem file

  1. Remove the passphrase from the .pem file: openssl rsa -in key.pem -out key.pem

Versions

Version
0.1.5