I am trying to read a group's settings from a perl script using the group settings API in my Google Apps for Education domain. I have activated the Group settings API in the console and verified that it is active under the account that I am using to authenticate. I receive a "Daily Limit Exceeded. Please sign up" error even though I've only hit a few times ( < 10 ) and i have a courtesy 100,000 queries a day according to the console. Any ideas on what is going on?
Here is a what I am seeing at the HTTP level.
> POST /accounts/ClientLogin HTTP/1.1
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 81
Host:
www.google.comEmail=emailaddressremoved&Passwd=passwordremoved&accountType=Hosted&service=apps
< HTTP/1.1 200 OK
Content-Type: text/plain
Cache-control: no-cache, no-store
Pragma: no-cache
Expires: Mon, 01-Jan-1990 00:00:00 GMT
Date: Fri, 29 Jun 2012 18:16:33 GMT
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Content-Length: 1309
Server: GSE
< SID=DQAAADABAAAEP8CNAr6ez6nic5PGM9X0jiGSi9jYR711bx6FYnRGSy6ilo8pRgqF99v0lovBjuBBY5B9CXqdnMJZdr1iF07ayqCmLfXlaLPwQjPB0PluXeTH7zGBgbJHNBw9ZNduJ8fG-CCAVmoK1wI0qoOwsdYgoE6YFTFKZJI_B9bGU0hq6JiOjDLR5CR638aDa9YnSCqTQ2tSwn1_lwpJNdTZfX6PB3OxFSVuu4cmDq7ogiK0GFQz1OB0wPCN1yrRFkXCs1aMnnR9BIoPEPa7HMcxwUXGfy1OyFW-NPkoIYufILyhNV1rytMxxXlGueGtvDgycotMjvV6VjTQGu3zjOfr1scOSjLxQbNLOXF76Aar68XOPHn8gJBRsZBnd100azp1N5jatNEU1WgiBjdvhXAsj3F1
LSID=DQAAADMBAABegq0nsqgnH1ft4-ExZUWnGfWRVjo5pQuTgb-t2i1YgM3ub_ygpcps0-EahilDf8cxatFMJCFyIc2Nhj5qF_c2mLody4mY5I8MNdyxrFmeDwEl7Bjqwi9n4Tf2zz0aARUB2s3tQLbqEz5lh4R8QdkZrqEvC1LYVt3DC-eCLkHmzQu-yeg7NDzyovz5VtNbxN_kJOppreBwOcnLYtxYGcqE7wO-rDLJBDoxsVvVun4iXda6Xr5EGYCNrPabn2_6-inKmKBN60fZng81q3Tt4WsiMwMm6snsf5WeXRWcPwE4k3grkpK1Ttg29bE77fsRH6IVdMKn3z-tqH95OQFoEqumZ3FDBi0qO9j8PEDVsDURw8pDcna_aWrwbp46O0GbswPiHcR1xZTuC4Z6fPHORYqxio4qdqK9Xg3n3xJQBneuUA
Auth=DQAAADIBAABegq0nsqgnH1ft4-ExZUWnGfWRVjo5pQuTgb-t2i1YgM3ub_ygpcps0-EahilDf8clOkrvATxxCoBjm6ZgURQkdZijQRcVKWgCFsbJKWmyzztbZQa5ynF5I37TPJfMv6NVuInGZYdSP2yTLv6foQAuUrzb-aQ_5kPFzkaOfKZVwuJMVYslxyklliDv-00Hw5CTvF1gWkRiW5dx2Luz2H6KMLvcJvKo29gQBd7HhOiu9ZVPCnT2IRLV4nYsUT3IZrRlUOvlN5Doapkj4X-upWtPZv4VgcOR3hRRfIdwWuvJ6o6G2ls6p86UgZhwGfly-eFO7RFtwbZc9xXi5AdQmvDWSIVoI5unioQi4iLtrcOnO8M4a9obJjv8ue4kPQ_pQ0gBmI0PBu_xKzcOZd64FRpo2wlcxGNHujD8rocf-cPsBQ
> GET /groups/v1/groups/eops HTTP/1.1
Connection: keep-alive
Content-Type: application/atom+xml
Content-Length: 0
Host:
www.googleapis.comAuthorization: GoogleLogin auth=DQAAADIBAABegq0nsqgnH1ft4-ExZUWnGfWRVjo5pQuTgb-t2i1YgM3ub_ygpcps0-EahilDf8clOkrvATxxCoBjm6ZgURQkdZijQRcVKWgCFsbJKWmyzztbZQa5ynF5I37TPJfMv6NVuInGZYdSP2yTLv6foQAuUrzb-aQ_5kPFzkaOfKZVwuJMVYslxyklliDv-00Hw5CTvF1gWkRiW5dx2Luz2H6KMLvcJvKo29gQBd7HhOiu9ZVPCnT2IRLV4nYsUT3IZrRlUOvlN5Doapkj4X-upWtPZv4VgcOR3hRRfIdwWuvJ6o6G2ls6p86UgZhwGfly-eFO7RFtwbZc9xXi5AdQmvDWSIVoI5unioQi4iLtrcOnO8M4a9obJjv8ue4kPQ_pQ0gBmI0PBu_xKzcOZd64FRpo2wlcxGNHujD8rocf-cPsBQ
< HTTP/1.1 403 Forbidden
Content-Type: application/vnd.google.gdata.error+xml; charset=UTF-8
Date: Fri, 29 Jun 2012 18:16:33 GMT
Expires: Fri, 29 Jun 2012 18:16:33 GMT
Cache-Control: private, max-age=0
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Server: GSE
Transfer-Encoding: chunked
< 148
< <?xml version="1.0" encoding="UTF-8"?>
<errors xmlns="
http://schemas.google.com/g/2005">
<error>
<domain>usageLimits</domain>
<code>dailyLimitExceededUnreg</code>
<internalReason>Daily Limit Exceeded. Please sign up</internalReason>
<extendedHelp>
https://code.google.com/apis/console</extendedHelp>
</error>
</errors>
<
0
Here is the perl script I am using to test the problem as reference in case it helps.
#!/usr/bin/perl
use Mojo::UserAgent;
my $email = 'real-address-removed;
my $pass = 'real-password-removed';
my %auth_args = ( accountType => 'Hosted', service => 'apps',
Email => $email, Passwd => $pass );
my $auth_url = '
https://www.google.com/accounts/ClientLogin';
my $form = Mojo::UserAgent->new->post_form( $auth_url => \%auth_args );
die "Unable to authenticate.\n" . $form->res->body
unless $form->res->code == 200;
my $auth_response = $form->res->body;
my %auth_key = map { split /=/ } split /\n/, $auth_response;
my $key = $auth_key{'Auth'};
my %auth_header = ( 'Content-type' => 'application/atom+xml',
'Authorization' => 'GoogleLogin auth=' . $key );
my $group_url = "
https://www.googleapis.com/groups/v1/groups/eops";
my $res = Mojo::UserAgent->new->get( $group_url, \%auth_header )->res;
my $error_message = "Could not retrieve settings from Google.\n";
die $error_message . $res->body if $res->code != 200;