# GrainReference Properties

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreference/)

## GrainId {#grainid-d1bac44a}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreference/properties/grainid-d1bac44a/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L283)

```csharp
public GrainId GrainId
```

Gets the grain id.

## InterfaceName {#interfacename-86cc749e}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreference/properties/interfacename-86cc749e/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L394)

```csharp
public virtual string InterfaceName
```

Gets the interface name.

## InterfaceType {#interfacetype-0ef79ab3}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreference/properties/interfacetype-0ef79ab3/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L288)

```csharp
public GrainInterfaceType InterfaceType
```

Gets the interface type.

## InterfaceVersion {#interfaceversion-0c8e4704}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreference/properties/interfaceversion-0c8e4704/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L389)

```csharp
public ushort InterfaceVersion
```

Gets the interface version.
