ConductorOne Policy API

The Policy API from ConductorOne — 5 operation(s) for policy.

OpenAPI Specification

conductorone-policy-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  description: The ConductorOne API is a HTTP API for managing ConductorOne resources.
  title: ConductorOne Access Conflict Policy API
  version: 0.1.0-alpha
servers:
- description: The ConductorOne API server for the current tenant.
  url: https://{tenantDomain}.conductor.one
  variables:
    tenantDomain:
      default: example
      description: The domain of the tenant to use for this request.
security:
- bearerAuth: []
  oauth: []
tags:
- name: Policy
paths:
  /api/v1/policies:
    get:
      description: List policies.
      operationId: c1.api.policy.v1.Policies.List
      parameters:
      - in: query
        name: page_size
        schema:
          description: The pageSize field.
          format: int32
          readOnly: false
          type: integer
      - in: query
        name: page_token
        schema:
          description: The pageToken field.
          readOnly: false
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.ListPolicyResponse'
          description: Successful response
      summary: List
      tags:
      - Policy
      x-speakeasy-group: Policies
      x-speakeasy-name-override: List
    post:
      description: Create a policy.
      operationId: c1.api.policy.v1.Policies.Create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.CreatePolicyRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.CreatePolicyResponse'
          description: The CreatePolicyResponse message contains the created policy object.
      summary: Create
      tags:
      - Policy
      x-speakeasy-entity-operation:
        terraform-resource: Policy#create
      x-speakeasy-group: Policies
      x-speakeasy-name-override: Create
  /api/v1/policies/{id}:
    delete:
      description: Delete a policy by ID.
      operationId: c1.api.policy.v1.Policies.Delete
      parameters:
      - in: path
        name: id
        required: true
        schema:
          description: The Id of the policy to delete.
          readOnly: false
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.DeletePolicyRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.DeletePolicyResponse'
          description: Empty response with a status code indicating success.
      summary: Delete
      tags:
      - Policy
      x-speakeasy-entity-operation:
        terraform-resource: Policy#delete
      x-speakeasy-group: Policies
      x-speakeasy-name-override: Delete
    get:
      description: Get a policy by ID.
      operationId: c1.api.policy.v1.Policies.Get
      parameters:
      - in: path
        name: id
        required: true
        schema:
          description: The id field.
          readOnly: false
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.GetPolicyResponse'
          description: The GetPolicyResponse message contains the policy object.
      summary: Get
      tags:
      - Policy
      x-speakeasy-entity-operation:
        terraform-datasource: null
        terraform-resource: Policy#read
      x-speakeasy-group: Policies
      x-speakeasy-name-override: Get
    post:
      description: Update a policy by providing a policy object and an update mask.
      operationId: c1.api.policy.v1.Policies.Update
      parameters:
      - in: path
        name: id
        required: true
        schema:
          description: The ID of the Policy.
          readOnly: true
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.UpdatePolicyRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.UpdatePolicyResponse'
          description: The UpdatePolicyResponse message contains the updated policy object.
      summary: Update
      tags:
      - Policy
      x-speakeasy-entity-operation:
        terraform-resource: Policy#update
      x-speakeasy-group: Policies
      x-speakeasy-name-override: Update
  /api/v1/policies/test-account-provision-policy:
    post:
      description: Invokes the c1.api.policy.v1.AccountProvisionPolicyTest.Test method.
      operationId: c1.api.policy.v1.AccountProvisionPolicyTest.Test
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.TestAccountProvisionPolicyRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.TestAccountProvisionPolicyResponse'
          description: Successful response
      summary: Test
      tags:
      - Policy
      x-speakeasy-group: AccountProvisionPolicyTest
      x-speakeasy-name-override: Test
  /api/v1/policies/validate/cel:
    post:
      description: Validate policies
      operationId: c1.api.policy.v1.PolicyValidate.ValidateCEL
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.EditorValidateRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.EditorValidateResponse'
          description: Successful response
      summary: Validate Cel
      tags:
      - Policy
      x-speakeasy-group: PolicyValidate
      x-speakeasy-name-override: ValidateCEL
  /api/v1/search/policies:
    post:
      description: Search policies based on filters specified in the request body.
      operationId: c1.api.policy.v1.PolicySearch.Search
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.policy.v1.SearchPoliciesRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.policy.v1.SearchPoliciesResponse'
          description: Successful response
      summary: Search
      tags:
      - Policy
      x-speakeasy-entity-operation:
        terraform-datasource:
        - Policy#read
        - Policies#read
        terraform-resource: null
      x-speakeasy-group: PolicySearch
      x-speakeasy-name-override: Search
      x-speakeasy-pagination:
        inputs:
        - in: requestBody
          name: pageToken
          type: cursor
        outputs:
          nextCursor: $.nextPageToken
        type: cursor
components:
  schemas:
    c1.api.policy.v1.WaitDuration:
      description: The WaitDuration message.
      nullable: true
      properties:
        duration:
          format: duration
          readOnly: false
          type: string
      title: Wait Duration
      type: object
      x-speakeasy-name-override: WaitDuration
    validate.UInt32Rules:
      description: UInt32Rules describes the constraints applied to `uint32` values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: uint32
          readOnly: false
          type: integer
        gt:
          description: "Gt specifies that this field must be greater than the specified value,\n exclusive. If the value of Gt is larger than a specified Lt or Lte, the\n range is reversed."
          format: uint32
          readOnly: false
          type: integer
        gte:
          description: "Gte specifies that this field must be greater than or equal to the\n specified value, inclusive. If the value of Gte is larger than a\n specified Lt or Lte, the range is reversed."
          format: uint32
          readOnly: false
          type: integer
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: uint32
            type: integer
          nullable: true
          readOnly: false
          type: array
        lt:
          description: "Lt specifies that this field must be less than the specified value,\n exclusive"
          format: uint32
          readOnly: false
          type: integer
        lte:
          description: "Lte specifies that this field must be less than or equal to the\n specified value, inclusive"
          format: uint32
          readOnly: false
          type: integer
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: uint32
            type: integer
          nullable: true
          readOnly: false
          type: array
      title: U Int 32 Rules
      type: object
      x-speakeasy-name-override: UInt32Rules
    c1.api.form.v1.MutuallyExclusive:
      description: The MutuallyExclusive message.
      nullable: true
      title: Mutually Exclusive
      type: object
      x-speakeasy-name-override: MutuallyExclusive
    validate.Fixed32Rules:
      description: Fixed32Rules describes the constraints applied to `fixed32` values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: uint32
          readOnly: false
          type: integer
        gt:
          description: "Gt specifies that this field must be greater than the specified value,\n exclusive. If the value of Gt is larger than a specified Lt or Lte, the\n range is reversed."
          format: uint32
          readOnly: false
          type: integer
        gte:
          description: "Gte specifies that this field must be greater than or equal to the\n specified value, inclusive. If the value of Gte is larger than a\n specified Lt or Lte, the range is reversed."
          format: uint32
          readOnly: false
          type: integer
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: uint32
            type: integer
          nullable: true
          readOnly: false
          type: array
        lt:
          description: "Lt specifies that this field must be less than the specified value,\n exclusive"
          format: uint32
          readOnly: false
          type: integer
        lte:
          description: "Lte specifies that this field must be less than or equal to the\n specified value, inclusive"
          format: uint32
          readOnly: false
          type: integer
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: uint32
            type: integer
          nullable: true
          readOnly: false
          type: array
      title: Fixed 32 Rules
      type: object
      x-speakeasy-name-override: Fixed32Rules
    validate.SFixed64Rules:
      description: SFixed64Rules describes the constraints applied to `sfixed64` values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: int64
          readOnly: false
          type: string
        gt:
          description: "Gt specifies that this field must be greater than the specified value,\n exclusive. If the value of Gt is larger than a specified Lt or Lte, the\n range is reversed."
          format: int64
          readOnly: false
          type: string
        gte:
          description: "Gte specifies that this field must be greater than or equal to the\n specified value, inclusive. If the value of Gte is larger than a\n specified Lt or Lte, the range is reversed."
          format: int64
          readOnly: false
          type: string
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: int64
            type: string
          nullable: true
          readOnly: false
          type: array
        lt:
          description: "Lt specifies that this field must be less than the specified value,\n exclusive"
          format: int64
          readOnly: false
          type: string
        lte:
          description: "Lte specifies that this field must be less than or equal to the\n specified value, inclusive"
          format: int64
          readOnly: false
          type: string
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: int64
            type: string
          nullable: true
          readOnly: false
          type: array
      title: S Fixed 64 Rules
      type: object
      x-speakeasy-name-override: SFixed64Rules
    validate.EnumRules:
      description: EnumRules describe the constraints applied to enum values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: int32
          readOnly: false
          type: integer
        definedOnly:
          description: "DefinedOnly specifies that this field must be only one of the defined\n values for this enum, failing on any undefined value."
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: int32
            type: integer
          nullable: true
          readOnly: false
          type: array
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: int32
            type: integer
          nullable: true
          readOnly: false
          type: array
      title: Enum Rules
      type: object
      x-speakeasy-name-override: EnumRules
    c1.api.form.v1.CheckboxField:
      description: The CheckboxField message.
      nullable: true
      title: Checkbox Field
      type: object
      x-speakeasy-name-override: CheckboxField
    c1.api.policy.v1.EditorValidateResponse:
      description: The EditorValidateResponse message.
      properties:
        markers:
          description: The markers field.
          items:
            $ref: '#/components/schemas/c1.api.editor.v1.EditorMarker'
          nullable: true
          readOnly: false
          type: array
      title: Editor Validate Response
      type: object
      x-speakeasy-name-override: EditorValidateResponse
    validate.TimestampRules:
      description: "TimestampRules describe the constraints applied exclusively to the\n `google.protobuf.Timestamp` well-known type"
      nullable: true
      properties:
        const:
          format: date-time
          readOnly: false
          type: string
        gt:
          format: date-time
          readOnly: false
          type: string
        gtNow:
          description: "GtNow specifies that this must be greater than the current time. GtNow\n can only be used with the Within rule."
          readOnly: false
          type: boolean
        gte:
          format: date-time
          readOnly: false
          type: string
        lt:
          format: date-time
          readOnly: false
          type: string
        ltNow:
          description: "LtNow specifies that this must be less than the current time. LtNow\n can only be used with the Within rule."
          readOnly: false
          type: boolean
        lte:
          format: date-time
          readOnly: false
          type: string
        required:
          description: Required specifies that this field must be set
          readOnly: false
          type: boolean
        within:
          format: duration
          readOnly: false
          type: string
      title: Timestamp Rules
      type: object
      x-speakeasy-name-override: TimestampRules
    c1.api.policy.v1.Form:
      description: The Form message.
      nullable: true
      properties:
        form:
          $ref: '#/components/schemas/c1.api.form.v1.Form'
      title: Form
      type: object
      x-speakeasy-name-override: Form
    c1.api.form.v1.FileInputField:
      description: The FileInputField message.
      nullable: true
      title: File Input Field
      type: object
      x-speakeasy-name-override: FileInputField
    c1.api.policy.v1.Accept:
      description: This policy step indicates that a ticket should have an approved outcome. This is a terminal approval state and is used to explicitly define the end of approval steps.
      nullable: true
      properties:
        acceptMessage:
          description: An optional message to include in the comments when a task is automatically accepted.
          readOnly: false
          type: string
      title: Accept
      type: object
      x-speakeasy-name-override: Accept
    c1.api.policy.v1.ConnectorProvision.DoNotSave:
      description: The DoNotSave message.
      nullable: true
      title: Do Not Save
      type: object
      x-speakeasy-name-override: DoNotSave
    c1.api.editor.v1.EditorMarker:
      description: The EditorMarker message.
      properties:
        endColumn:
          description: The endColumn field.
          format: int32
          readOnly: false
          type: integer
        endLineNumber:
          description: The endLineNumber field.
          format: int32
          readOnly: false
          type: integer
        message:
          description: The message field.
          readOnly: false
          type: string
        severity:
          description: The severity field.
          enum:
          - UNKNOWN
          - HINT
          - INFO
          - WARNING
          - ERROR
          readOnly: false
          type: string
          x-speakeasy-unknown-values: allow
        startColumn:
          description: The startColumn field.
          format: int32
          readOnly: false
          type: integer
        startLineNumber:
          description: The startLineNumber field.
          format: int32
          readOnly: false
          type: integer
      title: Editor Marker
      type: object
      x-speakeasy-name-override: EditorMarker
    validate.SFixed32Rules:
      description: SFixed32Rules describes the constraints applied to `sfixed32` values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: int32
          readOnly: false
          type: integer
        gt:
          description: "Gt specifies that this field must be greater than the specified value,\n exclusive. If the value of Gt is larger than a specified Lt or Lte, the\n range is reversed."
          format: int32
          readOnly: false
          type: integer
        gte:
          description: "Gte specifies that this field must be greater than or equal to the\n specified value, inclusive. If the value of Gte is larger than a\n specified Lt or Lte, the range is reversed."
          format: int32
          readOnly: false
          type: integer
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: int32
            type: integer
          nullable: true
          readOnly: false
          type: array
        lt:
          description: "Lt specifies that this field must be less than the specified value,\n exclusive"
          format: int32
          readOnly: false
          type: integer
        lte:
          description: "Lte specifies that this field must be less than or equal to the\n specified value, inclusive"
          format: int32
          readOnly: false
          type: integer
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: int32
            type: integer
          nullable: true
          readOnly: false
          type: array
      title: S Fixed 32 Rules
      type: object
      x-speakeasy-name-override: SFixed32Rules
    validate.UInt64Rules:
      description: UInt64Rules describes the constraints applied to `uint64` values
      nullable: true
      properties:
        const:
          description: Const specifies that this field must be exactly the specified value
          format: uint64
          readOnly: false
          type: string
        gt:
          description: "Gt specifies that this field must be greater than the specified value,\n exclusive. If the value of Gt is larger than a specified Lt or Lte, the\n range is reversed."
          format: uint64
          readOnly: false
          type: string
        gte:
          description: "Gte specifies that this field must be greater than or equal to the\n specified value, inclusive. If the value of Gte is larger than a\n specified Lt or Lte, the range is reversed."
          format: uint64
          readOnly: false
          type: string
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            format: uint64
            type: string
          nullable: true
          readOnly: false
          type: array
        lt:
          description: "Lt specifies that this field must be less than the specified value,\n exclusive"
          format: uint64
          readOnly: false
          type: string
        lte:
          description: "Lte specifies that this field must be less than or equal to the\n specified value, inclusive"
          format: uint64
          readOnly: false
          type: string
        notIn:
          description: "NotIn specifies that this field cannot be equal to one of the specified\n values"
          items:
            format: uint64
            type: string
          nullable: true
          readOnly: false
          type: array
      title: U Int 64 Rules
      type: object
      x-speakeasy-name-override: UInt64Rules
    c1.api.policy.v1.DelegatedProvision:
      description: This provision step indicates that we should delegate provisioning to the configuration of another app entitlement. This app entitlement does not have to be one from the same app, but MUST be configured as a proxy binding leading into this entitlement.
      nullable: true
      properties:
        appId:
          description: The AppID of the entitlement to delegate provisioning to.
          readOnly: false
          type: string
        entitlementId:
          description: The ID of the entitlement we are delegating provisioning to.
          readOnly: false
          type: string
        implicit:
          description: If true, a binding will be automatically created from the entitlement of the parent app.
          readOnly: false
          type: boolean
      title: Delegated Provision
      type: object
      x-speakeasy-name-override: DelegatedProvision
    c1.api.form.v1.Field:
      description: "A field is a single input meant to collect a piece of data from a user\n\nThis message contains a oneof named type. Only a single field of the following list may be set at a time:\n  - stringField\n  - boolField\n  - stringSliceField\n  - int64Field\n  - fileField\n"
      properties:
        boolField:
          $ref: '#/components/schemas/c1.api.form.v1.BoolField'
        description:
          description: The description field.
          readOnly: false
          type: string
        displayName:
          description: The displayName field.
          readOnly: false
          type: string
        fileField:
          $ref: '#/components/schemas/c1.api.form.v1.FileField'
        int64Field:
          $ref: '#/components/schemas/c1.api.form.v1.Int64Field'
        name:
          description: The name field.
          readOnly: false
          type: string
        stringField:
          $ref: '#/components/schemas/c1.api.form.v1.StringField'
        stringSliceField:
          $ref: '#/components/schemas/c1.api.form.v1.StringSliceField'
      title: Field
      type: object
      x-speakeasy-name-override: Field
    c1.api.policy.v1.ConnectorProvision.DeleteAccount:
      description: The DeleteAccount message.
      nullable: true
      properties:
        connectorId:
          description: The connectorId field.
          readOnly: false
          type: string
      title: Delete Account
      type: object
      x-speakeasy-name-override: DeleteAccount
    validate.AnyRules:
      description: "AnyRules describe constraints applied exclusively to the\n `google.protobuf.Any` well-known type"
      nullable: true
      properties:
        in:
          description: "In specifies that this field's `type_url` must be equal to one of the\n specified values."
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        notIn:
          description: "NotIn specifies that this field's `type_url` must not be equal to any of\n the specified values."
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        required:
          description: Required specifies that this field must be set
          readOnly: false
          type: boolean
      title: Any Rules
      type: object
      x-speakeasy-name-override: AnyRules
    c1.api.form.v1.BoolField:
      description: "The BoolField message.\n\nThis message contains a oneof named view. Only a single field of the following list may be set at a time:\n  - checkboxField\n\n\nThis message contains a oneof named _rules. Only a single field of the following list may be set at a time:\n  - rules\n"
      nullable: true
      properties:
        checkboxField:
          $ref: '#/components/schemas/c1.api.form.v1.CheckboxField'
        defaultValue:
          description: The defaultValue field.
          readOnly: false
          type: boolean
        rules:
          $ref: '#/components/schemas/validate.BoolRules'
      title: Bool Field
      type: object
      x-speakeasy-name-override: BoolField
    c1.api.policy.v1.ExpressionApproval:
      description: The ExpressionApproval message.
      nullable: true
      properties:
        allowSelfApproval:
          description: Configuration to allow self approval of if the user is specified and also the target of the ticket.
          readOnly: false
          type: boolean
        assignedUserIds:
          description: The assignedUserIds field.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
        expressions:
          description: Array of dynamic expressions to determine the approvers.  The first expression to return a non-empty list of users will be used.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        fallback:
          description: Configuration to allow a fallback if the expression does not return a valid list of users.
          readOnly: false
          type: boolean
        fallbackUserIds:
          description: Configuration to specific which users to fallback to if and the expression does not return a valid list of users.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: Expression Approval
      type: object
      x-speakeasy-name-override: ExpressionApproval
    c1.api.form.v1.Int64Field:
      description: "The Int64Field message.\n\nThis message contains a oneof named view. Only a single field of the following list may be set at a time:\n  - numberField\n\n\nThis message contains a oneof named _default_value. Only a single field of the following list may be set at a time:\n  - defaultValue\n\n\nThis message contains a oneof named _rules. Only a single field of the following list may be set at a time:\n  - rules\n"
      nullable: true
      properties:
        defaultValue:
          description: 'The defaultValue field.

            This field is part of the `_default_value` oneof.

            See the documentation for `c1.api.form.v1.Int64Field` for more details.'
          format: int64
          nullable: true
          readOnly: false
          type: string
        numberField:
          $ref: '#/components/schemas/c1.api.form.v1.NumberField'
        placeholder:
          description: The placeholder field.
          readOnly: false
          type: string
        rules:
          $ref: '#/components/schemas/validate.Int64Rules'
      title: Int 64 Field
      type: object
      x-speakeasy-name-override: Int64Field
    validate.StringRules:
      description: "StringRules describe the constraints applied to `string` values\n\nThis message contains a oneof named well_known. Only a single field of the following list may be set at a time:\n  - email\n  - hostname\n  - ip\n  - ipv4\n  - ipv6\n  - uri\n  - uriRef\n  - address\n  - uuid\n  - wellKnownRegex\n"
      nullable: true
      properties:
        address:
          description: "Address specifies that the field must be either a valid hostname as\n defined by RFC 1034 (which does not support internationalized domain\n names or IDNs), or it can be a valid IP (v4 or v6).\nThis field is part of the `well_known` oneof.\nSee the documentation for `validate.StringRules` for more details."
          nullable: true
          readOnly: false
          type: boolean
        const:
          description: Const specifies that this field must be exactly the specified value
          readOnly: false
          type: string
        contains:
          description: "Contains specifies that this field must have the specified substring\n anywhere in the string."
          readOnly: false
          type: string
        email:
          description: "Email specifies that the field must be a valid email address as\n defined by RFC 5322\nThis field is part of the `well_known` oneof.\nSee the documentation for `validate.StringRules` for more details."
          nullable: true
          readOnly: false
          type: boolean
        hostname:
          description: "Hostname specifies that the field must be a valid hostname as\n defined by RFC 1034. This constraint does not support\n internationalized domain names (IDNs).\nThis field is part of the `well_known` oneof.\nSee the documentation for `validate.StringRules` for more details."
          nullable: true
          readOnly: false
          type: boolean
        ignoreEmpty:
          description: "IgnoreEmpty specifies that the validation rules of this field should be\n evaluated only if the field is not empty"
          readOnly: false
          type: boolean
        in:
          description: "In specifies that this field must be equal to one of the specified\n values"
          items:
            type: string
          nullable: true
          re

# --- truncated at 32 KB (109 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/conductorone/refs/heads/main/openapi/conductorone-policy-api-openapi.yml