GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  REST::GOOGLE::APPS::PROVISIONING (3)

.ds Aq ’

NAME

REST::Google::Apps::Provisioning - A Perl library to Google’s RESTful Apps Provisioning API

CONTENTS

SYNOPSIS



  use REST::Google::Apps::Provisioning

  $google = REST::Google::Apps::Provisioning->new(
      domain   => company.com,
      username => admin,
      password => g00gl34pp5!
  );

  $user->{jsmith} = $google->getUser( username => jsmith );



DESCRIPTION

REST::Google::Apps::Provisioning provides a Perl interface to Google’s RESTful Apps API.

CONSTRUCTOR

    new ( DOMAIN, USERNAME, PASSWORD )

Creates a new <B>REST::Google::Apps::ProvisioningB> object. A domain parameter is required.

Supplying authentication information to the constructor is optional, but needs to happen either here or with a call to the <B>authenticateB> method.

<B>ExampleB>



  $google = REST::Google::Apps::Provisioning->new(
      domain   => company.com,
      username => admin,
      password => g00gl34pp5!
  );



METHODS

    authenticate ( USERNAME, PASSWORD )

Authenticate a session.

<B>ExampleB>



  $google->authenticate(
      username => admin,
      password => g00gl34pp5!
  )
  || die "Could not authenticate";



    createUser ( USERNAME, GIVENNAME, FAMILYNAME, PASSWORD, PASSWORDHASHFUNCTION, ADMIN )

Create a new user.

The following parameters are required:
username The username associated with the account being created.
givenName The user’s given (first) name.
familyName The user’s family (last) name.
password The user’s password.
The following parameters are optional:
passwordHashFunction The format of the value in the <B>passwordB> attribute. Currently, the only valid values for this parameter are SHA-1 and MD5.
admin Can be ’true’ or ’false’, representing whether or not the user should be granted administrator access.
<B>ExampleB>



  $user->{jsmith} = $google->createUser(
      username   => jsmith,
      givenName  => Joseph,
      familyName => Smith,
      password   => j5m1thp455w0rd!
  )
  || die "Could not create user";



    deleteUser ( USERNAME )

Delete a user.

<B>ExampleB>



  delete $user->{jsmith} if $google->deleteUser( username => jsmith );



    renameUser ( USERNAME, NEWNAME )

Rename a user.

<B>ExampleB>



  $google->renameUser(
      username => jsmith,
      newname  => josephsmith
  )
  || die "Could not rename user";



    updateUser ( USERNAME, ATTR )

Update a user’s attributes. See the <B>createUserB> function for a list of valid attributes.

<B>ExampleB>



  $google->updateUser(
      username => jsmith,
      givenName => Joey
  )
  || die "Could not update user";



    getUser ( USER )

Retrieve a hash containing a user’s account information.

<B>ExampleB>



  $user->{jsmith} = $google->getUser( username => jsmith );



<B>HashB>

Using the above example, the returned hash is:



  jsmith => {
      admin => false,
      ipWhitelisted => false,
      suspended => false,
      limit => 7168,
      username => jsmith`,
      changePasswordAtNextLogin => false,
      givenName => Joseph,
      familyName => Smith,
      agreedToTerms => false
  }



    getAllUsers

Retrieve a list of all users.

<B>ExampleB>



  $users = $google->getAllUsers();



    createGroup ( GROUP, DESCRIPTION, PERMISSION )

Create a new group.

The following parameters are required:
group The group name.
The following parameters are optional:
description A longer description of the group.
permission The permission level of the group. Valid values are:
owner Owners of the group.
member Members of the group.
domain Any user who belongs to the same domain as the group.
anyone Any user.
<B>ExampleB>



  $google->createGroup(
      group => finance,
      description => Finance Department
  )
  || die "Could not create group";



    deleteGroup ( GROUP )

Delete a group.

<B>ExampleB>



  delete $group->{finance} if $google->deleteGroup( group => finance );



    updateGroup ( GROUP, ... )

Not yet implemented.

    getGroup ( GROUP )

Retrieve a hash containing group information.

<B>ExampleB>



  $group->{finance} = $google->getGroup( group => finance );



<B>HashB>

Using the above example, the returned hash is:



  finance => {
      emailPermission => Anyone,
      groupId => finance@company.com,
      updated => 2009-09-16T21:05:15.697Z,
      groupName => finance,
      description => Finance Department
  }



    getAllGroups

Retrieve a list of all groups.

<B>ExampleB>



  $groups = $google->getAllGroups();



    addGroupMember ( GROUP, MEMBER )

Add a member to a group.

<B>ExampleB>



  $google->addGroupMember(
      group  => finance,
      member => jsmith
  )
  || die "Could not add group member";



    deleteGroupMember ( GROUP, MEMBER )

Remove a member from a group.

<B>ExampleB>



  $google->deleteGroupMember(
      group  => finance,
      member => jsmith
  )
  || die "Could not delete group member";



    getGroupMembers ( GROUP )

Retrieve a list of group members.

<B>ExampleB>



  $group->{finance}->{members} = $google->getGroupMembers( group => finance );



<B>HashB>

Using the above example, the returned hash is:



  members => {
      jsmith => {
          memberType => User,
          directMember => true,
          memberId => jsmith@company.com
      },
      sschneid => {
          memberType => User,
          directMember => true,
          memberId => sschneid@company.com
      }
  }



    addGroupOwner ( GROUP, OWNER )

Add an owner to a group.

<B>ExampleB>



  $google->addGroupOwner(
      group => finance,
      owner => jsmith
  )
  || die "Could not add group owner";



    deleteGroupOwner ( GROUP, OWNER )

Remove an owner from a group.

<B>ExampleB>



  $google->deleteGroupOwner(
      group => finance,
      owner => jsmith
  )
  || die "Could not delete group owner";



    getGroupOwner ( GROUP, OWNER )

Not yet implemented.

    getGroupOwners ( GROUP )

Retrieve a list of group owners.

<B>ExampleB>



  $group->{finance}->{owners} = $google->getGroupOwners( group => finance );



<B>HashB>

Using the above example, the returned hash is:



  owners => {
      jsmith => {
          email => jsmith@company.com,
          type => User
      },
      sschneid => {
          email => sschneid@company.com,
          type => User
      }
  }



    createNickname ( USERNAME, NICKNAME )

Create a nickname (e-mail alias).

<B>ExampleB>



  $google->createNickname(
      username => jsmith,
      nickname => joe
  )
  || die "Could not create nickname";



    deleteNickname ( NICKNAME )

Delete a nickname (e-mail alias).

<B>ExampleB>



  $google->deleteNickname( nickname => joe );



    getNickname ( NICKNAME )

Retrieve a nickname.

<B>ExampleB>



  $nickname->{frank} = $google->getNickname( nickname => frank );



<B>HashB>

Using the above example, the returned hash is:



  frank => {
      name => frank,
      username => jsmith
  }



    getUserNicknames ( USERNAME )

Retrieve a list of a user’s nicknames.

<B>ExampleB>



  $user->{jsmith}->{nicknames} = $google->getUserNicknames( username => jsmith );



    getAllNicknames

Retrieve a list of all nicknames.

AUTHOR

Scott Schneider <sschneid@gmail.com>
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 REST::GOOGLE::APPS::PROVISIONING (3) 2011-12-22

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.