# Google Cloud Audit API - Class RequestMetadata (2.6.0)

<button class="button button-with-icon cloud-select-dropdown__button " aria-haspopup="true">Version latest</button>

- [2.6.0 (latest)](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit.RequestMetadata)
- [2.5.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.5.0/Google.Cloud.Audit.RequestMetadata)
- [2.4.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.4.0/Google.Cloud.Audit.RequestMetadata)
- [2.3.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.3.0/Google.Cloud.Audit.RequestMetadata)
- [2.2.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.2.0/Google.Cloud.Audit.RequestMetadata)
- [2.1.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.1.0/Google.Cloud.Audit.RequestMetadata)
- [2.0.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/2.0.0/Google.Cloud.Audit.RequestMetadata)
- [1.1.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/1.1.0/Google.Cloud.Audit.RequestMetadata)
- [1.0.0](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/1.0.0/Google.Cloud.Audit.RequestMetadata)

    public sealed class RequestMetadata : IMessage<RequestMetadata>, IEquatable<RequestMetadata>, IDeepCloneable<RequestMetadata>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Audit API class RequestMetadata.

Metadata about the request.

## Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) \> RequestMetadata

## Implements

[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[RequestMetadata](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit.RequestMetadata), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[RequestMetadata](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit.RequestMetadata), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[RequestMetadata](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit.RequestMetadata), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html)

## Inherited Members

[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Namespace

[Google.Cloud.Audit](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit)

## Assembly

Google.Cloud.Audit.dll

## Constructors

### RequestMetadata()

    public RequestMetadata()

### RequestMetadata(RequestMetadata)

    public RequestMetadata(RequestMetadata other)

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `other` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Audit/latest/Google.Cloud.Audit.RequestMetadata` |

## Properties

### CallerIp

    public string CallerIp { get; set; }

The IP address of the caller.
For a caller from the internet, this will be the public IPv4 or IPv6
address. For calls made from inside Google's internal production network
from one GCP service to another, `caller_ip` will be redacted to "private".
For a caller from a Compute Engine VM with a external IP address,
`caller_ip` will be the VM's external IP address. For a caller from a
Compute Engine VM without a external IP address, if the VM is in the same
organization (or project) as the accessed resource, `caller_ip` will be the
VM's internal IPv4 address, otherwise `caller_ip` will be redacted to
"gce-internal-ip". See <https://cloud.google.com/compute/docs/vpc/> for more
information.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### CallerNetwork

    public string CallerNetwork { get; set; }

The network of the caller.
Set only if the network host project is part of the same GCP organization
(or project) as the accessed resource.
See <https://cloud.google.com/compute/docs/vpc/> for more information.
This is a scheme-less URI full resource name. For example:

    "//compute.googleapis.com/projects/PROJECT_ID/global/networks/NETWORK_ID"

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### CallerSuppliedUserAgent

    public string CallerSuppliedUserAgent { get; set; }

The user agent of the caller.
This information is not authenticated and should be treated accordingly.
For example:

- `google-api-python-client/1.4.0`: The request was made by the Google API client for Python.
- `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`: The request was made by the Google Cloud SDK CLI (gcloud).
- `AppEngine-Google; (+http://code.google.com/appengine; appid:
  s~my-project`: The request was made from the `my-project` App Engine app.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### DestinationAttributes

    public AttributeContext.Types.Peer DestinationAttributes { get; set; }

The destination of a network activity, such as accepting a TCP connection.
In a multi hop network activity, the destination represents the receiver of
the last hop. Only two fields are used in this message, Peer.port and
Peer.ip. These fields are optionally populated by those services utilizing
the IAM condition feature.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.htmlhttps://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.Types.htmlhttps://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.Types.Peer.html` |   |

### RequestAttributes

    public AttributeContext.Types.Request RequestAttributes { get; set; }

Request attributes used in IAM condition evaluation. This field contains
request attributes like request time and access levels associated with
the request.

To get the whole view of the attributes used in IAM
condition evaluation, the user must also look into
`AuditLog.authentication_info.resource_attributes`.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.htmlhttps://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.Types.htmlhttps://cloud.google.com/dotnet/docs/reference/Google.Api.CommonProtos/latest/Google.Rpc.Context.AttributeContext.Types.Request.html` |   |