Blame docs/reference/html/GDataOAuth2Authorizer.html

Packit 4b6dd7
Packit 4b6dd7
<html>
Packit 4b6dd7
<head>
Packit 4b6dd7
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Packit 4b6dd7
<title>GDataOAuth2Authorizer: GData Reference Manual</title>
Packit 4b6dd7
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
Packit 4b6dd7
<link rel="home" href="index.html" title="GData Reference Manual">
Packit 4b6dd7
<link rel="up" href="ch05.html" title="Authentication/Authorization API">
Packit 4b6dd7
<link rel="prev" href="GDataOAuth1Authorizer.html" title="GDataOAuth1Authorizer">
Packit 4b6dd7
<link rel="next" href="ch06.html" title="Comment API">
Packit 4b6dd7
<meta name="generator" content="GTK-Doc V1.26.1 (XML mode)">
Packit 4b6dd7
<link rel="stylesheet" href="style.css" type="text/css">
Packit 4b6dd7
</head>
Packit 4b6dd7
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Top  | 
Packit 4b6dd7
                  Description  | 
Packit 4b6dd7
                  Object Hierarchy  | 
Packit 4b6dd7
                  Implemented Interfaces  | 
Packit 4b6dd7
                  Properties
Packit 4b6dd7
Packit 4b6dd7
Home
Packit 4b6dd7
Up
Packit 4b6dd7
Prev
Packit 4b6dd7
Next
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

GDataOAuth2Authorizer

Packit 4b6dd7

GDataOAuth2Authorizer — GData OAuth 2.0 authorization interface

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Stability Level

Packit 4b6dd7
Packit 4b6dd7
develop applications to these interfaces, release them, and have confidence that
Packit 4b6dd7
they will run on all minor releases of the product (after the one in which the
Packit 4b6dd7
interface was introduced, and within the same major release). Even at a major
Packit 4b6dd7
release, incompatible changes are expected to be rare, and to have strong
Packit 4b6dd7
justifications.
Packit 4b6dd7
">Stable, unless otherwise indicated
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Functions

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
GDataOAuth2Authorizer *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_new ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
GDataOAuth2Authorizer *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_new_for_authorization_domains ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_build_authentication_uri ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gboolean
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
void
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_async ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gboolean
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_finish ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
const gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_client_id ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
const gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_redirect_uri ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
const gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_client_secret ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_dup_refresh_token ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
void
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_set_refresh_token ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
const gchar *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_locale ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
void
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_set_locale ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
guint
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_timeout ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
void
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_set_timeout ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
GProxyResolver *
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_get_proxy_resolver ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
void
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_set_proxy_resolver ()
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Properties

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
client-id
Packit 4b6dd7
Read / Write / Construct Only
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
client-secret
Packit 4b6dd7
Read / Write / Construct Only
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
locale
Packit 4b6dd7
Read / Write
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
GProxyResolver *
Packit 4b6dd7
proxy-resolver
Packit 4b6dd7
Read / Write
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
redirect-uri
Packit 4b6dd7
Read / Write / Construct Only
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
gchar *
Packit 4b6dd7
refresh-token
Packit 4b6dd7
Read / Write
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
guint
Packit 4b6dd7
timeout
Packit 4b6dd7
Read / Write
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Types and Values

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
#define
Packit 4b6dd7
GDATA_OAUTH2_REDIRECT_URI_OOB
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
#define
Packit 4b6dd7
GDATA_OAUTH2_REDIRECT_URI_OOB_AUTO
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
 
Packit 4b6dd7
GDataOAuth2Authorizer
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
 
Packit 4b6dd7
GDataOAuth2AuthorizerClass
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Object Hierarchy

Packit 4b6dd7
    GObject
Packit 4b6dd7
    ╰── GDataOAuth2Authorizer
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Implemented Interfaces

Packit 4b6dd7

Packit 4b6dd7
GDataOAuth2Authorizer implements
Packit 4b6dd7
 GDataAuthorizer.

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Includes

Packit 4b6dd7
#include <gdata/gdata-oauth2-authorizer.h>
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Description

Packit 4b6dd7

GDataOAuth2Authorizer provides an implementation of the GDataAuthorizer

Packit 4b6dd7
interface for authentication and authorization using the

Packit 4b6dd7
OAuth 2.0

process, which is Google’s currently preferred authentication and

Packit 4b6dd7
authorization process.

Packit 4b6dd7

OAuth 2.0 replaces the deprecated OAuth 1.0 and ClientLogin processes. One of

Packit 4b6dd7
the main reasons for this is to allow two-factor authentication to be
Packit 4b6dd7
supported, by moving the authentication interface to a web page under
Packit 4b6dd7
Google’s control.

Packit 4b6dd7

The OAuth 2.0 process as implemented by Google follows the

Packit 4b6dd7
OAuth 2.0
Packit 4b6dd7
protocol as specified by IETF in RFC 6749, with a few additions to
Packit 4b6dd7

support scopes (implemented in libgdata by GDataAuthorizationDomains),

Packit 4b6dd7
locales and custom domains. Briefly, the process is initiated by building an
Packit 4b6dd7
authentication URI (using gdata_oauth2_authorizer_build_authentication_uri())
Packit 4b6dd7
and opening it in the user’s web browser. The user authenticates and
Packit 4b6dd7
authorizes the requested scopes on Google’s website, then an authorization
Packit 4b6dd7
code is returned (via “redirect-uri”) to the
Packit 4b6dd7
application, which then converts the code into an access and refresh token
Packit 4b6dd7
(using gdata_oauth2_authorizer_request_authorization()). The access token is
Packit 4b6dd7
then attached to all future requests to the online service, and the refresh
Packit 4b6dd7
token can be used in future (with gdata_authorizer_refresh_authorization())
Packit 4b6dd7
to refresh authorization after the access token expires.

Packit 4b6dd7

The refresh token may also be accessed as

Packit 4b6dd7
“refresh-token” and saved by the application. It may
Packit 4b6dd7
later be set on a new instance of GDataOAuth2Authorizer, and
Packit 4b6dd7
gdata_authorizer_refresh_authorization_async() called to establish a new
Packit 4b6dd7
access token without requiring the user to re-authenticate unless they have
Packit 4b6dd7
explicitly revoked the refresh token.

Packit 4b6dd7

For an overview of the standard OAuth 2.0 flow, see

Packit 4b6dd7
RFC 6749.
Packit 4b6dd7

Before an application can be authorized using OAuth 2.0, it must be

Packit 4b6dd7
registered with

Packit 4b6dd7
Google’s
Packit 4b6dd7
Developer Console, and a client ID, client secret and redirect URI
Packit 4b6dd7

retrieved. These must be built into your application, and knowledge of them

Packit 4b6dd7
will allow any application to impersonate yours, so it is recommended that
Packit 4b6dd7
they are kept secret (e.g. as a configure-time option).

Packit 4b6dd7

libgdata supports

Packit 4b6dd7
incremental
Packit 4b6dd7
authorization, where multiple GDataOAuth2Authorizers can be used to
Packit 4b6dd7

incrementally build up authorizations against multiple scopes. Typically,

Packit 4b6dd7
you should use one GDataOAuth2Authorizer per GDataService your application
Packit 4b6dd7
uses, limit the scope of each authorizer, and enable incremental
Packit 4b6dd7
authorization when calling
Packit 4b6dd7
gdata_oauth2_authorizer_build_authentication_uri().

Packit 4b6dd7

Each access token is long lived, so reauthorization is rarely necessary with

Packit 4b6dd7
GDataOAuth2Authorizer. It is supported using
Packit 4b6dd7
gdata_authorizer_refresh_authorization().

Packit 4b6dd7
Packit 4b6dd7

Example 9. Authenticating Asynchronously Using OAuth 2.0

Packit 4b6dd7
Packit 4b6dd7
  
Packit 4b6dd7
    
Packit 4b6dd7
      
Packit 4b6dd7
        
1
Packit 4b6dd7
2
Packit 4b6dd7
3
Packit 4b6dd7
4
Packit 4b6dd7
5
Packit 4b6dd7
6
Packit 4b6dd7
7
Packit 4b6dd7
8
Packit 4b6dd7
9
Packit 4b6dd7
10
Packit 4b6dd7
11
Packit 4b6dd7
12
Packit 4b6dd7
13
Packit 4b6dd7
14
Packit 4b6dd7
15
Packit 4b6dd7
16
Packit 4b6dd7
17
Packit 4b6dd7
18
Packit 4b6dd7
19
Packit 4b6dd7
20
Packit 4b6dd7
21
Packit 4b6dd7
22
Packit 4b6dd7
23
Packit 4b6dd7
24
Packit 4b6dd7
25
Packit 4b6dd7
26
Packit 4b6dd7
27
Packit 4b6dd7
28
Packit 4b6dd7
29
Packit 4b6dd7
30
Packit 4b6dd7
31
Packit 4b6dd7
32
Packit 4b6dd7
33
Packit 4b6dd7
34
Packit 4b6dd7
35
Packit 4b6dd7
36
Packit 4b6dd7
37
Packit 4b6dd7
38
Packit 4b6dd7
39
Packit 4b6dd7
40
Packit 4b6dd7
41
Packit 4b6dd7
42
Packit 4b6dd7
43
Packit 4b6dd7
44
Packit 4b6dd7
45
Packit 4b6dd7
46
Packit 4b6dd7
47
Packit 4b6dd7
48
Packit 4b6dd7
49
Packit 4b6dd7
        
GDataSomeService *service;
Packit 4b6dd7
GDataOAuth2Authorizer *authorizer;
Packit 4b6dd7
gchar *authentication_uri, *authorization_code;
Packit 4b6dd7
Packit 4b6dd7
/* Create an authorizer and authenticate and authorize the service we're using, asynchronously. */
Packit 4b6dd7
authorizer = gdata_oauth2_authorizer_new ("some-client-id", "some-client-secret",
Packit 4b6dd7
                                          GDATA_OAUTH2_REDIRECT_URI_OOB, GDATA_TYPE_SOME_SERVICE);
Packit 4b6dd7
authentication_uri = gdata_oauth2_authorizer_build_authentication_uri (authorizer, NULL, FALSE);
Packit 4b6dd7
Packit 4b6dd7
/* (Present the page at the authentication URI to the user, either in an embedded or stand-alone web browser, and
Packit 4b6dd7
 * ask them to grant access to the application and return the code Google gives them.) */
Packit 4b6dd7
authorization_code = ask_user_for_code (authentication_uri);
Packit 4b6dd7
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_async (authorizer, authorization_code, cancellable,
Packit 4b6dd7
                                                     (GAsyncReadyCallback) request_authorization_cb, user_data);
Packit 4b6dd7
Packit 4b6dd7
g_free (authentication_uri);
Packit 4b6dd7
Packit 4b6dd7
/* Zero out the code before freeing. */
Packit 4b6dd7
if (token_secret != NULL) {
Packit 4b6dd7
    memset (authorization_code, 0, strlen (authorization_code));
Packit 4b6dd7
}
Packit 4b6dd7
Packit 4b6dd7
g_free (authorization_code);
Packit 4b6dd7
Packit 4b6dd7
/* Create a service object and link it with the authorizer */
Packit 4b6dd7
service = gdata_some_service_new (GDATA_AUTHORIZER (authorizer));
Packit 4b6dd7
Packit 4b6dd7
static void
Packit 4b6dd7
request_authorization_cb (GDataOAuth2Authorizer *authorizer, GAsyncResult *async_result, gpointer user_data)
Packit 4b6dd7
{
Packit 4b6dd7
    GError *error = NULL;
Packit 4b6dd7
Packit 4b6dd7
    if (gdata_oauth2_authorizer_request_authorization_finish (authorizer, async_result, &error) == FALSE) {
Packit 4b6dd7
        /* Notify the user of all errors except cancellation errors */
Packit 4b6dd7
        if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
Packit 4b6dd7
            g_error ("Authorization failed: %s", error->message);
Packit 4b6dd7
        }
Packit 4b6dd7
Packit 4b6dd7
        g_error_free (error);
Packit 4b6dd7
        return;
Packit 4b6dd7
    }
Packit 4b6dd7
Packit 4b6dd7
    /* (The client is now authenticated and authorized against the service.
Packit 4b6dd7
     * It can now proceed to execute queries on the service object which require the user to be authenticated.) */
Packit 4b6dd7
}
Packit 4b6dd7
Packit 4b6dd7
g_object_unref (service);
Packit 4b6dd7
g_object_unref (authorizer);
Packit 4b6dd7
      
Packit 4b6dd7
    
Packit 4b6dd7
  
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Functions

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_new ()

Packit 4b6dd7
GDataOAuth2Authorizer *
Packit 4b6dd7
gdata_oauth2_authorizer_new (const gchar *client_id,
Packit 4b6dd7
                             const gchar *client_secret,
Packit 4b6dd7
                             const gchar *redirect_uri,
Packit 4b6dd7
                             GType service_type);
Packit 4b6dd7

Creates a new GDataOAuth2Authorizer. The client_id

Packit 4b6dd7
 must be unique for your
Packit 4b6dd7
application, and as registered with Google, and the client_secret
Packit 4b6dd7
 must be
Packit 4b6dd7
paired with it.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

client_id

Packit 4b6dd7

your application’s client ID

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

client_secret

Packit 4b6dd7

your application’s client secret

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

redirect_uri

Packit 4b6dd7

authorisation redirect URI

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

service_type

Packit 4b6dd7

the GType of a GDataService subclass which the

Packit 4b6dd7
GDataOAuth2Authorizer will be used with

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

a new GDataOAuth2Authorizer; unref with

Packit 4b6dd7
g_object_unref(). 

Packit 4b6dd7

[transfer full]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_new_for_authorization_domains ()

Packit 4b6dd7
GDataOAuth2Authorizer *
Packit 4b6dd7
gdata_oauth2_authorizer_new_for_authorization_domains
Packit 4b6dd7
                               (const gchar *client_id,
Packit 4b6dd7
                                const gchar *client_secret,
Packit 4b6dd7
                                const gchar *redirect_uri,
Packit 4b6dd7
                                GList *authorization_domains);
Packit 4b6dd7

Creates a new GDataOAuth2Authorizer. The client_id

Packit 4b6dd7
 must be unique for your
Packit 4b6dd7
application, and as registered with Google, and the client_secret
Packit 4b6dd7
 must be
Packit 4b6dd7
paired with it.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

client_id

Packit 4b6dd7

your application’s client ID

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

client_secret

Packit 4b6dd7

your application’s client secret

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

redirect_uri

Packit 4b6dd7

authorisation redirect URI

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

authorization_domains

Packit 4b6dd7

a non-empty list of GDataAuthorizationDomains to be authorized against by

Packit 4b6dd7
the GDataOAuth2Authorizer. 

Packit 4b6dd7
[element-type GDataAuthorizationDomain][transfer none]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

a new GDataOAuth2Authorizer; unref with

Packit 4b6dd7
g_object_unref(). 

Packit 4b6dd7

[transfer full]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_build_authentication_uri ()

Packit 4b6dd7
gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_build_authentication_uri
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                const gchar *login_hint,
Packit 4b6dd7
                                gboolean include_granted_scopes);
Packit 4b6dd7

Build an authentication URI to open in the user’s web browser (or an embedded

Packit 4b6dd7
browser widget). This will display an authentication page from Google,
Packit 4b6dd7
including an authentication form and confirmation of the authorisation
Packit 4b6dd7
domains being requested by this GDataAuthorizer. The user will authenticate
Packit 4b6dd7
in the browser, then an authorisation code will be returned via the
Packit 4b6dd7
“redirect-uri”, ready to be passed to
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization().

Packit 4b6dd7

If login_hint

Packit 4b6dd7
 is non-NULL, it will be passed to the server as a hint of
Packit 4b6dd7
which user is attempting to authenticate, which can be used to pre-fill the
Packit 4b6dd7
e-mail address box in the authentication form.

Packit 4b6dd7

If include_granted_scopes

Packit 4b6dd7
 is TRUE, the authentication request will
Packit 4b6dd7
automatically include all authorisation domains previously granted to this
Packit 4b6dd7
user/application pair, allowing for incremental authentication — asking for
Packit 4b6dd7
permissions as needed, rather than all in one large bundle at the first
Packit 4b6dd7
opportunity. If include_granted_scopes
Packit 4b6dd7
 is FALSE, incremental authentication
Packit 4b6dd7
will not be enabled, and only the domains passed to the
Packit 4b6dd7
GDataOAuth2Authorizer constructor will eventually be authenticated.
Packit 4b6dd7
See the

Packit 4b6dd7
reference
Packit 4b6dd7
documentation for more details.
Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

login_hint

Packit 4b6dd7

optional e-mail address or sub identifier for the

Packit 4b6dd7
user. 

Packit 4b6dd7
[nullable]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

include_granted_scopes

Packit 4b6dd7

TRUE to enable incremental authorisation

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the authentication URI to open in a web

Packit 4b6dd7
browser; free with g_free(). 

Packit 4b6dd7

[transfer full]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_request_authorization ()

Packit 4b6dd7
gboolean
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                const gchar *authorization_code,
Packit 4b6dd7
                                GCancellable *cancellable,
Packit 4b6dd7
                                GError **error);
Packit 4b6dd7

Request an authorisation code from the user’s web browser is converted to

Packit 4b6dd7
authorisation (access and refresh) tokens. This is the final step in the
Packit 4b6dd7
authentication process; once complete, the GDataOAuth2Authorizer should be
Packit 4b6dd7
fully authorised for its domains.

Packit 4b6dd7

On failure, GDATA_SERVICE_ERROR_FORBIDDEN will be returned if the user or

Packit 4b6dd7
server denied the authorisation request. GDATA_SERVICE_ERROR_PROTOCOL_ERROR
Packit 4b6dd7
will be returned if the server didn’t follow the expected protocol.
Packit 4b6dd7
G_IO_ERROR_CANCELLED will be returned if the operation was cancelled using
Packit 4b6dd7
cancellable
Packit 4b6dd7
.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

authorization_code

Packit 4b6dd7

code returned from the authentication page

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

cancellable

Packit 4b6dd7

a GCancellable, or NULL.

Packit 4b6dd7
[allow-none]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

error

Packit 4b6dd7

return location for a GError, or NULL

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

TRUE on success, FALSE otherwise

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_request_authorization_async ()

Packit 4b6dd7
void
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_async
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                const gchar *authorization_code,
Packit 4b6dd7
                                GCancellable *cancellable,
Packit 4b6dd7
                                GAsyncReadyCallback callback,
Packit 4b6dd7
                                gpointer user_data);
Packit 4b6dd7

Asynchronous version of gdata_oauth2_authorizer_request_authorization().

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

authorization_code

Packit 4b6dd7

code returned from the authentication page

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

cancellable

Packit 4b6dd7

an optional GCancellable, or NULL.

Packit 4b6dd7
[allow-none]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

callback

Packit 4b6dd7

a GAsyncReadyCallback to call when authorization is finished

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

user_data

Packit 4b6dd7

data to pass to the callback

Packit 4b6dd7
function. 

Packit 4b6dd7
[closure]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_request_authorization_finish ()

Packit 4b6dd7
gboolean
Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_finish
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                GAsyncResult *async_result,
Packit 4b6dd7
                                GError **error);
Packit 4b6dd7

Finishes an asynchronous authorization operation started with

Packit 4b6dd7
gdata_oauth2_authorizer_request_authorization_async().

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

async_result

Packit 4b6dd7

a GAsyncResult

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

error

Packit 4b6dd7

a GError, or NULL

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

TRUE if authorization was successful, FALSE otherwise

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_client_id ()

Packit 4b6dd7
const gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_get_client_id (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Returns the authorizer's client ID, “client-id”, as

Packit 4b6dd7
specified on constructing the GDataOAuth2Authorizer.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the authorizer's client ID

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_redirect_uri ()

Packit 4b6dd7
const gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_get_redirect_uri
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Returns the authorizer’s redirect URI, “redirect-uri”,

Packit 4b6dd7
as specified on constructing the GDataOAuth2Authorizer.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the authorizer’s redirect URI

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_client_secret ()

Packit 4b6dd7
const gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_get_client_secret
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Returns the authorizer's client secret, “client-secret”,

Packit 4b6dd7
as specified on constructing the GDataOAuth2Authorizer.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the authorizer's client secret

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_dup_refresh_token ()

Packit 4b6dd7
gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_dup_refresh_token
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Returns the authorizer's refresh token, “refresh-token”,

Packit 4b6dd7
as set by client code previously on the GDataOAuth2Authorizer, or as
Packit 4b6dd7
returned by the most recent authentication operation.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the authorizer's refresh token.

Packit 4b6dd7

[transfer full]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.2

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_set_refresh_token ()

Packit 4b6dd7
void
Packit 4b6dd7
gdata_oauth2_authorizer_set_refresh_token
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                const gchar *refresh_token);
Packit 4b6dd7

Sets the authorizer's refresh token, “refresh-token”.

Packit 4b6dd7
This is used to periodically refresh the access token. Set it to NULL to
Packit 4b6dd7
clear the current authentication from the authorizer.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

refresh_token

Packit 4b6dd7

the new refresh token, or NULL to clear

Packit 4b6dd7
authorization. 

Packit 4b6dd7
[nullable]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.2

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_locale ()

Packit 4b6dd7
const gchar *
Packit 4b6dd7
gdata_oauth2_authorizer_get_locale (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Returns the locale currently being used for network requests, or NULL if the

Packit 4b6dd7
locale is the default.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the current locale.

Packit 4b6dd7

[allow-none]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_set_locale ()

Packit 4b6dd7
void
Packit 4b6dd7
gdata_oauth2_authorizer_set_locale (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                    const gchar *locale);
Packit 4b6dd7

Set the locale used for network requests to locale

Packit 4b6dd7
, given in standard UNIX
Packit 4b6dd7
locale format. See “locale” for more details.

Packit 4b6dd7

Note that while it’s possible to change the locale after sending network

Packit 4b6dd7
requests (i.e. calling gdata_oauth2_authorizer_build_authentication_uri() for
Packit 4b6dd7
the first time), it is unsupported, as the server-side software may behave
Packit 4b6dd7
unexpectedly. The only supported use of this method is after creation of the
Packit 4b6dd7
authorizer, but before any network requests are made.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

locale

Packit 4b6dd7

the new locale in UNIX locale format, or NULL for the

Packit 4b6dd7
default locale. 

Packit 4b6dd7
[allow-none]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_timeout ()

Packit 4b6dd7
guint
Packit 4b6dd7
gdata_oauth2_authorizer_get_timeout (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Gets the “timeout” property; the network timeout, in

Packit 4b6dd7
seconds.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

the timeout, or 0

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_set_timeout ()

Packit 4b6dd7
void
Packit 4b6dd7
gdata_oauth2_authorizer_set_timeout (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                     guint timeout);
Packit 4b6dd7

Sets the “timeout” property; the network timeout, in

Packit 4b6dd7
seconds.

Packit 4b6dd7

If timeout

Packit 4b6dd7
 is 0, network operations will never
Packit 4b6dd7
time out.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

timeout

Packit 4b6dd7

the timeout, or 0

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_get_proxy_resolver ()

Packit 4b6dd7
GProxyResolver *
Packit 4b6dd7
gdata_oauth2_authorizer_get_proxy_resolver
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self);
Packit 4b6dd7

Gets the GProxyResolver on the GDataOAuth2Authorizer's SoupSession.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Returns

Packit 4b6dd7

a GProxyResolver, or NULL.

Packit 4b6dd7

[transfer none][allow-none]

Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

gdata_oauth2_authorizer_set_proxy_resolver ()

Packit 4b6dd7
void
Packit 4b6dd7
gdata_oauth2_authorizer_set_proxy_resolver
Packit 4b6dd7
                               (GDataOAuth2Authorizer *self,
Packit 4b6dd7
                                GProxyResolver *proxy_resolver);
Packit 4b6dd7

Sets the GProxyResolver on the SoupSession used internally by the given

Packit 4b6dd7
GDataOAuth2Authorizer.

Packit 4b6dd7
Packit 4b6dd7

Parameters

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

self

Packit 4b6dd7

a GDataOAuth2Authorizer

Packit 4b6dd7
 
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

proxy_resolver

Packit 4b6dd7

a GProxyResolver, or NULL.

Packit 4b6dd7
[allow-none]
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Types and Values

Packit 4b6dd7
Packit 4b6dd7

GDATA_OAUTH2_REDIRECT_URI_OOB

Packit 4b6dd7
#define GDATA_OAUTH2_REDIRECT_URI_OOB "urn:ietf:wg:oauth:2.0:oob"
Packit 4b6dd7
Packit 4b6dd7

OAuth 2 redirect URI for out-of-band authorisation code transfer, where the

Packit 4b6dd7
user is shown the authorisation code and asked to copy it.

Packit 4b6dd7

See

Packit 4b6dd7
reference
Packit 4b6dd7
documentation for details.
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

GDATA_OAUTH2_REDIRECT_URI_OOB_AUTO

Packit 4b6dd7
#define GDATA_OAUTH2_REDIRECT_URI_OOB_AUTO "urn:ietf:wg:oauth:2.0:oob:auto"
Packit 4b6dd7
Packit 4b6dd7

OAuth 2 redirect URI for out-of-band authorisation code transfer, where the

Packit 4b6dd7
user is not shown the authorisation code or asked to copy it.

Packit 4b6dd7

See

Packit 4b6dd7
reference
Packit 4b6dd7
documentation for details.
Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

GDataOAuth2Authorizer

Packit 4b6dd7
typedef struct _GDataOAuth2Authorizer GDataOAuth2Authorizer;
Packit 4b6dd7

All the fields in the GDataOAuth2Authorizer structure are private and should never be accessed directly.

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

GDataOAuth2AuthorizerClass

Packit 4b6dd7
typedef struct {
Packit 4b6dd7
} GDataOAuth2AuthorizerClass;
Packit 4b6dd7
Packit 4b6dd7

All the fields in the GDataOAuth2AuthorizerClass structure are private and should never be accessed directly.

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Property Details

Packit 4b6dd7
Packit 4b6dd7

The “client-id” property

Packit 4b6dd7
  “client-id”                gchar *
Packit 4b6dd7

A client ID for your application (see the

Packit 4b6dd7
reference documentation).
Packit 4b6dd7

It is recommended that the ID is of the form

Packit 4b6dd7
company name-
Packit 4b6dd7
application name-
Packit 4b6dd7
version ID.

Packit 4b6dd7

Flags: Read / Write / Construct Only

Packit 4b6dd7

Default value: NULL

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “client-secret” property

Packit 4b6dd7
  “client-secret”            gchar *
Packit 4b6dd7

Client secret provided by Google. This is unique for each application

Packit 4b6dd7
and is accessible from Google’s Developer Console when registering
Packit 4b6dd7
an application. It must be paired with the
Packit 4b6dd7
“client-id”.

Packit 4b6dd7

See the

Packit 4b6dd7
reference
Packit 4b6dd7
documentation for details.
Packit 4b6dd7

Flags: Read / Write / Construct Only

Packit 4b6dd7

Default value: NULL

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “locale” property

Packit 4b6dd7
  “locale”                   gchar *
Packit 4b6dd7

The locale to use for network requests, in UNIX locale format.

Packit 4b6dd7
(e.g. "en_GB", "cs", "de_DE".) Use NULL for the default "C" locale
Packit 4b6dd7
(typically "en_US").

Packit 4b6dd7

This locale will be used by the server-side software to localise the

Packit 4b6dd7
authentication and authorization pages at the URI returned by
Packit 4b6dd7
gdata_oauth2_authorizer_build_authentication_uri().

Packit 4b6dd7

The server-side behaviour is undefined if it doesn't support a given

Packit 4b6dd7
locale.

Packit 4b6dd7

Flags: Read / Write

Packit 4b6dd7

Default value: NULL

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “proxy-resolver” property

Packit 4b6dd7
  “proxy-resolver”           GProxyResolver *
Packit 4b6dd7

The GProxyResolver used to determine a proxy URI.

Packit 4b6dd7

Flags: Read / Write

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “redirect-uri” property

Packit 4b6dd7
  “redirect-uri”             gchar *
Packit 4b6dd7

Redirect URI to send the response from the authorisation request to.

Packit 4b6dd7
This must either be GDATA_OAUTH2_REDIRECT_URI_OOB,
Packit 4b6dd7
GDATA_OAUTH2_REDIRECT_URI_OOB_AUTO, or a

Packit 4b6dd7
http://localhost URI with any port number (optionally)
Packit 4b6dd7

specified.

Packit 4b6dd7

This URI is where the authorisation server will redirect the user

Packit 4b6dd7
after they have completed interacting with the authentication page
Packit 4b6dd7
(gdata_oauth2_authorizer_build_authentication_uri()). If it is
Packit 4b6dd7
GDATA_OAUTH2_REDIRECT_URI_OOB, a page will be returned in the user’s
Packit 4b6dd7
browser with the authorisation code in its title and also embedded in
Packit 4b6dd7
the page for the user to copy if it is not possible to automatically
Packit 4b6dd7
extract the code from the page title. If it is
Packit 4b6dd7
GDATA_OAUTH2_REDIRECT_URI_OOB_AUTO, a similar page will be returned
Packit 4b6dd7
with the authorisation code in its title, but without displaying the
Packit 4b6dd7
code to the user — the user will simply be asked to close the page.
Packit 4b6dd7
If it is a localhost URI, the authentication page will redirect to
Packit 4b6dd7
that URI with the authorisation code appended as a code
Packit 4b6dd7
query parameter. If the user denies the authentication request, the
Packit 4b6dd7
authentication page will redirect to that URI with

Packit 4b6dd7
error=access_denied appended as a query parameter.
Packit 4b6dd7

Note that the redirect URI used must match that registered in

Packit 4b6dd7
Google’s Developer Console for your application.

Packit 4b6dd7

See the reference

Packit 4b6dd7
documentation for details about choosing a redirect URI.

Packit 4b6dd7

Flags: Read / Write / Construct Only

Packit 4b6dd7

Default value: NULL

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “refresh-token” property

Packit 4b6dd7
  “refresh-token”            gchar *
Packit 4b6dd7

The server provided refresh token, which can be stored and passed in

Packit 4b6dd7
to new GDataOAuth2Authorizer instances before calling
Packit 4b6dd7
gdata_authorizer_refresh_authorization_async() to create a new
Packit 4b6dd7
short-lived access token.

Packit 4b6dd7

The refresh token is opaque data and must not be parsed.

Packit 4b6dd7

Flags: Read / Write

Packit 4b6dd7

Default value: NULL

Packit 4b6dd7

Since: 0.17.2

Packit 4b6dd7
Packit 4b6dd7

Packit 4b6dd7
Packit 4b6dd7

The “timeout” property

Packit 4b6dd7
  “timeout”                  guint
Packit 4b6dd7

A timeout, in seconds, for network operations. If the timeout is

Packit 4b6dd7
exceeded, the operation will be cancelled and
Packit 4b6dd7
GDATA_SERVICE_ERROR_NETWORK_ERROR will be returned.

Packit 4b6dd7

If the timeout is 0, operations will

Packit 4b6dd7
never time out.

Packit 4b6dd7

Flags: Read / Write

Packit 4b6dd7

Default value: 0

Packit 4b6dd7

Since: 0.17.0

Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7
Packit 4b6dd7

Generated by GTK-Doc V1.26.1
Packit 4b6dd7
</body>
Packit 4b6dd7
</html>