Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A simple OCaml client for Google Services.
OCaml Standard ML

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
config
doc
examples
generated
src
test_data
tools
.gitignore
LICENSE
README.md
_oasis
_tags
myocamlbuild.ml
setup.ml

README.md

Note: Click on README.md in the directory view to have working relative links.

Google APIs Client library for OCaml

gapi-ocaml is a simple, unofficial, OCaml client for Google Services. The library supports ClientLogin, OAuth 1.0a, and OAuth 2.0 authentication. Supported RESTful APIs:

  • Calendar APIs v3 (JSON based)
  • Google+ API v1
  • Tasks API v1
  • APIs Discovery Service v1
  • URL Shortener API v1
  • OAuth2 API v2
  • Custom Search API v1
  • Google Analytics API v3
  • Page Speed Online API v1
  • Blogger API v2

Old versions:

  • Calendar Data API v2 (Atom based)

Features

  • Monadic interface
  • Functional lenses to access data structures
  • Service generator (experimental): a tool for generating client libraries for APIs based on the Google API Discovery format

Building gapi-ocaml

Requirements

This library was developed with the following dependencies (Unofficial OCaml packages for Debian):

Configuration and installation

This project provides 2 libraries:

  • gapi: Google APIs client library
  • gdata: Google Data Protocol client library

To build the libraries, run

$ ocaml setup.ml -configure
$ ocaml setup.ml -build

To install the libraries, run (as root, if your user doesn't have enough privileges)

$ ocaml setup.ml -install

To build and run the tests (you will need pa_monad), execute

$ ocaml setup.ml -configure --enable-tests
$ ocaml setup.ml -build
$ ocaml setup.ml -test

See tests README for further details regarding the tests.

To generate the documentation, run

$ ocaml setup.ml -doc

Then you can browse the HTML documentation starting from gapi-ocaml.docdir/index.html, but is not installed by default.

To uninstall anything that was previously installed, execute

$ ocaml setup.ml -uninstall

Usage

See auth examples for some examples of how to use Google's authorization endpoints.

See examples directory to find simple code samples that show usage of some services.

See service generator for a complex example of how to use functional lenses within the state monad.

See tools README for the instructions of how to build and run the service generator utility.

Something went wrong with that request. Please try again.