JOANNA SMITH: Hi, everybody and welcome back to "Google+
Developers Live." I'm Joanna Smith.
And I'm a Developer Programs Engineer for Google+.
And today I'm being joined by two Product Managers, Thor and
Joel, to talk about the new Google+ Domains API.
We launched this at I/O. We announced it
anyway, this summer.
And we're really excited because now it's finally
publicly available.
So Joel, why don't you tell us a little bit about why we
built this.
JOEL KALMANOWICZ: Thanks, Joanna.
I'm Joel Kalmanowicz.
I'm a Product Manager on Google Apps.
And I focus on Google+.
Now, the intersection of Google Apps and Google+ is
enterprise social networking.
And we're really excited in this space because we can do
things with Google+ that we can't really do out in the
consumer public world.
Because enterprises, being businesses and schools, use a
lot of third-party tools for other purposes in the day to
day life of a professional.
This means we can integrate Google+ as a social spine
across other services and not just have to build things onto
Google+ itself.
JOANNA SMITH: Well, thanks for joining us, Joel.
Thor, can you give us some insight into some of the new
features that are special for the Google+ Domains API?
THOR MITCHELL: Sure.
Hi, my name is Thor Mitchell.
I'm a Product Manager for the Google+ API.
When we started working with the Enterprise Team on this
API, it became clear.
There are a couple of areas that we should focus on.
The first is Circle Management, so creating
circles and syncing circles to, for example, a corporate
directory, managing people in circles.
The second was the stream, so both understanding the way
that users within a domain are using the stream and what
they're posting, what they're sharing and commenting on, and
also allowing third-party applications
to post to the stream.
JOANNA SMITH: Thanks, Thor.
So I know we just teased you with some really cool features
that you want to get to know how to use.
So let's go ahead and take a look at how you can do this.
The first step, as always, is to go to
developers.google.com/+/domains And this is going to be your
gateway into learning what is up.
We tried to do what we could really do to help you out.
So we organized the entire left navigation bar by feature
and by what you might want to do.
So straight up, let's get started.
And what we did here is, we created a chart, that I think
is really fantastic.
Because it compares the existing Google+ API to the
Google+ Domains API, and this means that if you've already
been developing for Google, you can see what's new and
what's different that you might want to start exploring
right away.
And then, of course, we have two quick
starts Java and Python.
And the best thing about these is, they show off a different
type of authentication.
Because everybody has started to get a grasp now of server
side OAuth authentication where you can actually
authenticate on a user-by-user basis.
And we have the code here for you, to show
you how to do that.
But what's cool is, we also now have domain-wide
delegation.
And what this means is, instead of authenticating one
user at a time, you can actually authenticate an app
on behalf of all of the users within a domain at once.
JOEL KALMANOWICZ: It's important to note that this
functionality is only available
to the domain admins.
And it's exactly the same as it works with other Google
Apps APIs, such as the Drive API.
So this allows Google Apps admins to be able to say, yes,
it's OK for this app to authorize on behalf of anyone
in the domain, because they're essentially installing a
product for their entire systems across
their business or school.
JOANNA SMITH: Definitely, that's exactly right.
And because this is so different from what we've
historically offered for the Google+ platform, we decided
to make this the main authentication we use in our
quick start.
So if you'd like to see it running, you can go ahead and
download that from our GitHub repo and get started.
And then what we have is different things that you
might want to do, different API calls you
might want to make.
They're classic, getting profiles, with your
people.get.
We also have managing circles.
And what we have here are multiple ways for you to
actually make sure your circles are all
constantly up to date.
And Thor mentioned this briefly earlier, but you can
create circles.
You can delete circles.
You can add people or move people, see the people that
are in a circle, see the circles that a person has.
there are so many different things you can do, to help
make sure that your circle management is as easy
as it should be.
Then we have the ability for you to read posts.
And what's really cool about this is that, it's no longer
limited to just the posts that have been publicly shared.
And so we've got the code here for you to do it.
But Thor, do you want to take a moment to explain what's
different about the domain sharing?
THOR MITCHELL: Sure.
So when you're using the existing public Google+ API
that we've had for a while now, you can
authenticate as yourself.
But then, the API only offers access to content that you've
shared publicly.
In the Google+ Domains API, as a user in an apps domain, the
API can access any of the content that you've shared
with any audience.
However, when you post using the API, you can only create a
restricted post, which is a post that
cannot leave that domain.
JOANNA SMITH: Exactly.
So let's go ahead and take a look at how to create a post.
And it's pretty straightforward.
All you have to do is create the message you want to say,
create the body.
And that's going to be the content.
And what we have here in this Python is, we have the post
being created through an activities.insert call.
And it's done as a JSON object.
So you see, we sent the original content, which is
just your message that you want to say.
And then what we do is, we set the sharing.
And right here, this one is being shared with the domain.
And then, of course, we set the domain restricted
parameter to True.
This has to be the case on every single call you make to
activities.insert.
Or else it's going to fail because you cannot post beyond
your domain.
And then, also, on this page, we have how to share to a
specific circle, how to share to a person,
how to write a comment.
But even cooler, you'll see on the left now.
We show you how to attach URLs, how to attach media, if
you want to attach a photo or a video, and also how to do a
reshare programmatically.
So there's a lot for you to discover here at
developers.googl e.com/+/domains.
Let's go ahead and take a step back and look
at the bigger picture.
We talked about some of the really cool features in the
new API calls.
But maybe we should discuss some of the
use cases for them.
JOEL KALMANOWICZ: So as I said before, one of the main
motivations we had for developing this is because, in
the enterprise space, for businesses and schools,
usually you're users and you admins are already making use
of a lot of third-party tools.
They can be things like provisioning.
They can be customer reference management.
They can be all sorts of things.
For schools, especially, you can have
learning management systems.
So this means that, actually, one of the really cool things
for me is, in this API, we allow circles management.
So this means that, working with Ocado, we've actually
developed a little cool script that lets you pull data from
something like a file or Active Directory or LDAP.
And you can actually look at this hierarchical data and
turn it into circles.
So a new user can join a company and start off with
teammates, managers, executives, people that you
should be following, or your local chefs because everyone
loves them, especially here at Google.
Or even in school, you can start, and you can have your
classmates circle ready to go.
THOR MITCHELL: As far as stream integration is
concerned, there are a couple of clear use
cases there as well.
One is, you might have an existing CRM system or Content
Management System or some other software that you
licensed from a third-party enterprise software vendor.
And they might add functionality to their tool
that allows that tool to publish to the
stream on your behalf.
So for example, I want you to meet a sales target or to
share your counter for the day on Google+ or
something like that.
Another example is reporting and auditing.
We have an example, a CloudLock, that we mentioned
in the launch blog post, which creates tools for helping you
understand your employees are using
Google+ and other services.
JOANNA SMITH: So I think there might be some confusion
regarding who can develop for Google+ and for the Domains
API specifically.
Joel, do you want to clarify that?
JOEL KALMANOWICZ: Sure.
Anyone can develop.
The only thing is, in order actually test,
using real API calls.
And to authenticate, you have to be logged in to a real
Google Apps Domain account.
So if you try and make an account which is not a Google
Apps Domains account, that means things that, as you
might be familiar with Premier or Standard, then you won't be
able to make these API calls successfully.
JOANNA SMITH: All right.
Well, thanks so much for joining us, you guys.
And I want to thank all of you for joining and tuning in,
because this is a really exciting new API,
totally brand new.
We announced it, like I said, at I/O. But now it's finally
public, and I encourage you to get started.
And once again, if you want to learn what all we have to
offer, you can go to developers.googl
e.com/+/domains.
Or if you want to just see some code running already, you
can go to github.com/googleplus and look
for the gplus-domains repos, because those are the ones
that are going to have the Domains quick starts.
And then, of course, you can always ask your questions.
THOR MITCHELL: Yeah, so I encourage you to join our
Google+ community called, Developing with Google+.
If you want to discuss this API with like-minded
developers.
We also have a Public Issue track, search for Google+
Issue Tracker.
And that's where you can go to request new features or report
any problems you might find.
JOEL KALMANOWICZ: And for any technical questions, you can
always submit them at Stack Overflow.
Please be sure to use the tag google-plus.
JOANNA SMITH: Exactly.
So once again, thanks, you guys.
And thank you to our product managers for joining us today.
And right before we sign off, I have one announcement, which
is, please don't freak out if you don't see a "Google+
Developers Live" episode next week or the week after.
We are planning something really big in our brand new
series of episodes.
But we need some time to finalize that and really make
sure that we're doing a great job.
So we ask for your patience, as we take a brief hiatus from
"Google+ Developers Live." And on that note,
have a great week.