### Signal

# Soup Message::authenticate

since: 3.0

#### Declaration

    gboolean
    authenticate (
      SoupMessage* self,
      SoupAuth* auth,
      gboolean retrying,
      gpointer user_data
    )

#### Description [src]

Emitted when the message requires authentication.

If credentials are available call `soup_auth_authenticate()` on `auth`. If these credentials fail, the signal will be emitted again, with `retrying` set to `TRUE`, which will continue until you return without calling `soup_auth_authenticate()` on `auth`.

Note that this may be emitted before `msg`‘s body has been fully read.

You can authenticate `auth` asynchronously by calling `g_object_ref()` on `auth` and returning `TRUE`. The operation will complete once either `soup_auth_authenticate()` or `soup_auth_cancel()` are called.

Default handler: The default handler is called after the handlers added via `g_signal_connect()`.
Available since: 3.0

#### Parameters

`auth`

  Type: `SoupAuth`

  The `SoupAuth` to authenticate.

  The data is owned by the caller of the function.

`retrying`

  Type: `gboolean`

  `TRUE` if this is the second (or later) attempt.

#### Return value

Type: `gboolean`

`TRUE` to stop other handlers from being invoked or `FALSE` to propagate the event further.