Class CreateAccessPolicyRequest

java.lang.Object
com.eqixiac.equinix.iam.model.json.creators.CreateAccessPolicyRequest

public class CreateAccessPolicyRequest extends Object
Request body for creating an IAM access policy via POST /v1/projects/{projectId}/accessPolicies (operationId createAccessPolicy, spec schema CreateAccessPolicyBody).

The permissions, intersect and subtract fields carry the polymorphic UserRectSet/InlinePermission entries; each entry is a PolicyExpression that losslessly represents whichever oneOf form is supplied — a bare permission-set id / ERN string (PolicyExpression.of(String)) or a structured inline-permission / reference object (PolicyExpression.of(com.fasterxml.jackson.databind.JsonNode)).

  • Constructor Details

    • CreateAccessPolicyRequest

      public CreateAccessPolicyRequest()
  • Method Details

    • accessPolicyId

      public CreateAccessPolicyRequest accessPolicyId(String accessPolicyId)
      Sets the access policy identifier (required), e.g. accesspolicy:my-policy.
      Parameters:
      accessPolicyId - the access policy id
      Returns:
      this request for chaining
    • description

      public CreateAccessPolicyRequest description(String description)
      Sets the description of the access policy.
      Parameters:
      description - the description
      Returns:
      this request for chaining
    • tags

      Sets the user-controlled tags (required by the API).
      Parameters:
      tags - the tags
      Returns:
      this request for chaining
    • permissions

      public CreateAccessPolicyRequest permissions(List<PolicyExpression> permissions)
      Sets the permission set entries (required) — polymorphic UserRectSet entries.
      Parameters:
      permissions - the permission entries
      Returns:
      this request for chaining
    • intersect

      public CreateAccessPolicyRequest intersect(List<PolicyExpression> intersect)
      Sets the intersect permission entries.
      Parameters:
      intersect - the intersect entries
      Returns:
      this request for chaining
    • subtract

      public CreateAccessPolicyRequest subtract(List<PolicyExpression> subtract)
      Sets the subtract permission entries.
      Parameters:
      subtract - the subtract entries
      Returns:
      this request for chaining
    • allowBadRefs

      public CreateAccessPolicyRequest allowBadRefs(String allowBadRefs)
      Sets the allowBadRefs flag (additional) to permit invalid references.
      Parameters:
      allowBadRefs - the flag value
      Returns:
      this request for chaining