public sealed class ReplaceServicePerimetersRequest : IMessage<ReplaceServicePerimetersRequest>, IEquatable<ReplaceServicePerimetersRequest>, IDeepCloneable<ReplaceServicePerimetersRequest>, IBufferMessage, IMessage
Reference documentation and code samples for the Identity Access Context Manager v1 API class ReplaceServicePerimetersRequest.
A request to replace all existing Service Perimeters in an Access Policy
with the Service Perimeters provided. This is done atomically.
Optional. The etag for the version of the [Access Policy]
[google.identity.accesscontextmanager.v1.AccessPolicy] that this
replace operation is to be performed on. If, at the time of replace, the
etag for the Access Policy stored in Access Context Manager is different
from the specified etag, then the replace operation will not be performed
and the call will fail. This field is not required. If etag is not
provided, the operation will be performed as if a valid etag is provided.
public RepeatedField<ServicePerimeter> ServicePerimeters { get; }
Required. The desired [Service Perimeters]
[google.identity.accesscontextmanager.v1.ServicePerimeter] that should
replace all existing [Service Perimeters]
[google.identity.accesscontextmanager.v1.ServicePerimeter] in the
[Access Policy]
[google.identity.accesscontextmanager.v1.AccessPolicy].
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eReplaceServicePerimetersRequest\u003c/code\u003e class in the Identity Access Context Manager v1 API is used to replace all existing service perimeters in an access policy with a new set of service perimeters atomically.\u003c/p\u003e\n"],["\u003cp\u003eThis operation requires the resource name of the access policy which owns the service perimeters, specified in the \u003ccode\u003eParent\u003c/code\u003e property.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eServicePerimeters\u003c/code\u003e property holds the new set of service perimeters that will replace the existing ones within the specified Access Policy.\u003c/p\u003e\n"],["\u003cp\u003eAn optional \u003ccode\u003eEtag\u003c/code\u003e property allows for conditional updates, where the operation will only proceed if the provided etag matches the current version of the Access Policy.\u003c/p\u003e\n"],["\u003cp\u003eThere are multiple versions of this class, with the most current one being 2.5.0, and prior versions available going as far back as 1.2.0.\u003c/p\u003e\n"]]],[],null,["# Identity Access Context Manager v1 API - Class ReplaceServicePerimetersRequest (2.5.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.5.0 (latest)](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [2.4.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/2.4.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [2.3.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/2.3.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [2.2.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/2.2.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [2.1.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/2.1.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [2.0.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/2.0.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [1.5.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/1.5.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [1.4.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/1.4.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [1.3.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/1.3.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest)\n- [1.2.0](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/1.2.0/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest) \n\n public sealed class ReplaceServicePerimetersRequest : IMessage\u003cReplaceServicePerimetersRequest\u003e, IEquatable\u003cReplaceServicePerimetersRequest\u003e, IDeepCloneable\u003cReplaceServicePerimetersRequest\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Identity Access Context Manager v1 API class ReplaceServicePerimetersRequest.\n\nA request to replace all existing Service Perimeters in an Access Policy\nwith the Service Perimeters provided. This is done atomically. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e ReplaceServicePerimetersRequest \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[ReplaceServicePerimetersRequest](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[ReplaceServicePerimetersRequest](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[ReplaceServicePerimetersRequest](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest), [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) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Identity.AccessContextManager.V1](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1)\n\nAssembly\n--------\n\nGoogle.Identity.AccessContextManager.V1.dll\n\nConstructors\n------------\n\n### ReplaceServicePerimetersRequest()\n\n public ReplaceServicePerimetersRequest()\n\n### ReplaceServicePerimetersRequest(ReplaceServicePerimetersRequest)\n\n public ReplaceServicePerimetersRequest(ReplaceServicePerimetersRequest other)\n\nProperties\n----------\n\n### Etag\n\n public string Etag { get; set; }\n\nOptional. The etag for the version of the \\[Access Policy\\]\n\\[google.identity.accesscontextmanager.v1.AccessPolicy\\] that this\nreplace operation is to be performed on. If, at the time of replace, the\netag for the Access Policy stored in Access Context Manager is different\nfrom the specified etag, then the replace operation will not be performed\nand the call will fail. This field is not required. If etag is not\nprovided, the operation will be performed as if a valid etag is provided.\n\n### Parent\n\n public string Parent { get; set; }\n\nRequired. Resource name for the access policy which owns these\n\\[Service Perimeters\\]\n\\[google.identity.accesscontextmanager.v1.ServicePerimeter\\].\n\nFormat: `accessPolicies/{policy_id}`\n\n### ParentAsAccessPolicyName\n\n public AccessPolicyName ParentAsAccessPolicyName { get; set; }\n\n[AccessPolicyName](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.AccessPolicyName)-typed view over the [Parent](/dotnet/docs/reference/Google.Identity.AccessContextManager.V1/latest/Google.Identity.AccessContextManager.V1.ReplaceServicePerimetersRequest#Google_Identity_AccessContextManager_V1_ReplaceServicePerimetersRequest_Parent) resource name property.\n\n### ServicePerimeters\n\n public RepeatedField\u003cServicePerimeter\u003e ServicePerimeters { get; }\n\nRequired. The desired \\[Service Perimeters\\]\n\\[google.identity.accesscontextmanager.v1.ServicePerimeter\\] that should\nreplace all existing \\[Service Perimeters\\]\n\\[google.identity.accesscontextmanager.v1.ServicePerimeter\\] in the\n\\[Access Policy\\]\n\\[google.identity.accesscontextmanager.v1.AccessPolicy\\]."]]