### Method

# Fwupd Client upload_report_async

since: 1.9.20

#### Declaration [src]

    void
    fwupd_client_upload_report_async (
      FwupdClient* self,
      const gchar* url,
      const gchar* payload,
      const gchar* signature,
      FwupdClientUploadFlags flags,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer callback_data
    )

#### Description [src]

Uploads a report to a remote server. The `fwupd_client_set_user_agent()` function should be called before this method is used.

You must have called `fwupd_client_connect_async()` on `self` before using this method.

NOTE: This method is thread-safe, but progress signals will be emitted in the global default main context, if not explicitly set with `fwupd_client_set_main_context()`.

Available since: 1.9.20

This method completes asynchronously. Use `fwupd_client_upload_report_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`url`

  Type: `const gchar*`

  The remote URL.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`payload`

  Type: `const gchar*`

  Payload string.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`signature`

  Type: `const gchar*`

  Signature string.

  The argument can be `NULL`.
  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`flags`

  Type: `FwupdClientUploadFlags`

  Download flags, e.g. `FWUPD_CLIENT_DOWNLOAD_FLAG_NONE`.

`cancellable`

  Type: `GCancellable`

  Optional `GCancellable`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.

`callback`

  Type: `GAsyncReadyCallback`

  The function to run on completion.

  The argument can be `NULL`.

`callback_data`

  Type: `gpointer`

  The data to pass to `callback`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.