My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Links

Provisioning API v2.0 Ruby client library

Provisioning API v2.0 Ruby client library for Google Apps. Based on GData API v2.0.

  • running even behind authenticated http proxies
  • using REXML (no extra module dependency)

Just uncompress the downloaded file in your working directory.

Ruby language : from version 1.8.6 patch-level 111 (just type ruby -v to check your version)

On-line documentation

Example :

     #!/usr/bin/ruby
     require 'gappsprovisioning/provisioningapi'
     include GAppsProvisioning
     adminuser = "root@mydomain.com"
     password  = "PaSsWo4d!"
     myapps = ProvisioningApi.new(adminuser,password)

     new_user = myapps.create_user("jsmith", "john", "smith", "secret", nil, "2048")
     puts new_user.family_name
     puts new_user.given_name

Want to update a user ?

     user = myapps.retrieve_user('jsmith')
     user_updated = myapps.update_user(user.username, user.given_name, user.family_name, nil, nil, "true")

Want to add an alias or nickname ?

     new_nickname = myapps.create_nickname("jsmith", "john.smith")

NEW!!! Want to add an email forwarding (thanks to Scott Jungling) ?

     new_forwarding = myapps.create_email_forwarding("jsmith", "brenda@yourdomain.com", "KEEP")

Want to manage groups ? (i.e. mailing lists)

     new_group = myapps.create_group("sales-dep", ['Sales Departement'])
     new_member = myapps.add_member_to_group("jsmith", "sales-dep")
     new_owner = myapps.add_owner_to_group("jsmith", "sales-dep")
     #     (ATTENTION: a owner is added only if it's already member of the group!)

Want to handle errors ?

     begin
             user = myapps.retrieve_user('noone')
             puts "givenName : "+user.given_name, "familyName : "+user.family_name, "username : "+user.username
             puts "admin ? : "+user.admin
     rescue GDataError => e
             puts "errorcode = "+e.code, "input : "+e.input, "reason : "+e.reason
     end
Powered by Google Project Hosting