Pure Storage Active Directory API

Active Directory configuration authenticates users for NFS using Kerberos or SMB using Kerberos or New Technology LAN Manager (NTLM). Active Directory is also used to authorize users by mapping identities across the NFS and SMB protocols by using LDAP queries.

Operations 10

GET /api/2.52/active-directory Pure Storage List Active Directory Accounts
POST /api/2.52/active-directory Pure Storage Create Active Directory Account
DELETE /api/2.52/active-directory Pure Storage Delete Active Directory Account
PATCH /api/2.52/active-directory Pure Storage Modify Active Directory Account
GET /api/2.52/active-directory/test Pure Storage GET Active-directory/test
GET /api/2.26/active-directory Pure Storage GET Active-directory
POST /api/2.26/active-directory Pure Storage POST Active-directory
DELETE /api/2.26/active-directory Pure Storage DELETE Active-directory
PATCH /api/2.26/active-directory Pure Storage PATCH Active-directory
GET /api/2.26/active-directory/test Pure Storage GET Active-directory/test

Documentation

Specifications

Code Examples

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flasharray-rest-api-volume-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flasharray-rest-api-host-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flasharray-rest-api-volume-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-file-system-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-bucket-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-array-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flashblade-rest-api-file-system-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flashblade-rest-api-bucket-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-array-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-metric-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-alert-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/pure1-cloud-api-array-structure.json

Other Resources

🔗
SDKs
https://pypi.org/project/py-pure-client/
🔗
SDKs
https://github.com/PureStorage-OpenConnect/PureStorage.Pure1
🔗
SDKs
https://github.com/PureStorage-OpenConnect/powershell-toolkit-3
🔗
SDKs
https://github.com/PureStorage-OpenConnect/rest-client
🔗
Integrations
https://github.com/PureStorage-OpenConnect/terraform-provider-flash
🔗
Integrations
https://github.com/PureStorage-OpenConnect/pure-fa-openmetrics-exporter
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-flasharray-rest-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flasharray-rest-api-volume-example.json
🔗
SDKs
https://github.com/PureStorage-OpenConnect/flashblade-powershell
🔗
SDKs
https://github.com/purestorage/purity_fb_python_client
🔗
Integrations
https://github.com/PureStorage-OpenConnect/pure-fb-openmetrics-exporter
🔗
Tools
https://github.com/PureStorage-OpenConnect/flashblade-mcp-server
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-flashblade-rest-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flashblade-rest-api-file-system-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flashblade-rest-api-bucket-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-pure1-cloud-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/pure1-cloud-api-array-example.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/pure-storage-active-directory-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

pure-storage-active-directory-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FlashArray REST Active Directory API
  version: '2.52'
  description: 'Active Directory configuration authenticates users for NFS using Kerberos or SMB using Kerberos

    or New Technology LAN Manager (NTLM). Active Directory is also used to authorize users by

    mapping identities across the NFS and SMB protocols by using LDAP queries.

    '
servers:
- url: /
tags:
- name: Active Directory
  description: 'Active Directory configuration authenticates users for NFS using Kerberos or SMB using Kerberos

    or New Technology LAN Manager (NTLM). Active Directory is also used to authorize users by

    mapping identities across the NFS and SMB protocols by using LDAP queries.

    '
paths:
  /api/2.52/active-directory:
    get:
      tags:
      - Active Directory
      summary: Pure Storage List Active Directory Accounts
      description: 'Displays configured Active Directory accounts.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Fqnames'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryGetResponse'
    post:
      tags:
      - Active Directory
      summary: Pure Storage Create Active Directory Account
      description: 'Creates one or more Active Directory accounts.

        The `user` and `password` provided are used

        to join the array to the specified `domain`.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Join_existing_acct_ad'
      - $ref: '#/components/parameters/Fqnames_required'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryPost'
        required: true
        x-codegen-request-body-name: active-directory
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryResponse'
      x-codegen-request-body-name: active-directory
    delete:
      tags:
      - Active Directory
      summary: Pure Storage Delete Active Directory Account
      description: 'Deletes one or more specified Active Directory accounts.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Local_only_ad'
      - $ref: '#/components/parameters/Fqnames_required'
      responses:
        '200':
          description: OK
          content: {}
    patch:
      tags:
      - Active Directory
      summary: Pure Storage Modify Active Directory Account
      description: 'Modifies specified Active Directory account.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Fqnames_required'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryPatch'
        required: true
        x-codegen-request-body-name: active-directory
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryResponse'
      x-codegen-request-body-name: active-directory
  /api/2.52/active-directory/test:
    get:
      tags:
      - Active Directory
      summary: Pure Storage GET Active-directory/test
      description: 'The diagnostic process that executes a series of validation tests on one or more `Active Directory` `accounts`. Each individual test verifies a specific aspect of the `configuration`, such as connectivity, authentication permissions, and service principal integrity, to ensure the environment is functioning properly.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names_required'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: The identifier or attribute provided by the `client` during the initial `request` or automatically generated by the `server` if not specified.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestResultWithResourceAndErrorContextPartialResourceResponse'
        '207':
          description: 'The status indicating a partial success. While some `resources`

            were successfully returned, specific `errors` occurred during

            the operation that may have prevented the full set of

            requested data from being retrieved or displayed.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestResultWithResourceAndErrorContextPartialResourceResponse'
  /api/2.26/active-directory:
    get:
      tags:
      - Active Directory
      summary: Pure Storage GET Active-directory
      description: List Active Directory accounts and their configuration.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Sort_2'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryGetResponse'
    post:
      tags:
      - Active Directory
      summary: Pure Storage POST Active-directory
      description: 'Join an Active Directory domain and generate keytabs for the

        registered SPNs and supported encryption types.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Join_existing_acct_ad_2'
      - $ref: '#/components/parameters/Names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryPost_2'
        required: true
        x-codegen-request-body-name: active-directory
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryResponse_2'
      x-codegen-request-body-name: active-directory
    delete:
      tags:
      - Active Directory
      summary: Pure Storage DELETE Active-directory
      description: Delete an Active Directory account.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Local_only_ad'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content: {}
    patch:
      tags:
      - Active Directory
      summary: Pure Storage PATCH Active-directory
      description: Modify the configuration of an Active Directory account.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryPatch_2'
        required: true
        x-codegen-request-body-name: active-directory
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryResponse_2'
      x-codegen-request-body-name: active-directory
  /api/2.26/active-directory/test:
    get:
      tags:
      - Active Directory
      summary: Pure Storage GET Active-directory/test
      description: 'Executes a series of tests to verify if the configuration of one or more Active Directory accounts are functioning properly. Each test verifies a different aspect of the configuration.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Sort_2'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestResultRemoteExecutionGet'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestResultRemoteExecutionGet'
components:
  schemas:
    _fixedReference_2:
      allOf:
      - $ref: '#/components/schemas/_fixedReferenceWithoutType'
      - type: object
        properties:
          resource_type:
            description: 'Type of the object (full name of the endpoint).

              Valid values are the unique part of the resource''s REST endpoint.

              For example, a reference to a file system would have a

              `resource_type` of `file-systems`.

              '
            type: string
            readOnly: true
    _serverReference:
      description: 'An object that is server-aware and can be associated to a server.

        '
      type: object
      properties:
        server:
          description: 'Reference to the server the object belongs to. When the value is empty or set to `null`

            it means the object lives outside of a server scope.

            '
          readOnly: true
          title: FixedReferenceWithType
          allOf:
          - $ref: '#/components/schemas/_fixedReferenceWithType'
    ActiveDirectoryPost_2:
      allOf:
      - $ref: '#/components/schemas/ActiveDirectoryDirectoryServers'
      - type: object
        required:
        - domain
        - password
        - user
        properties:
          computer_name:
            description: 'The common name of the computer account to be created in the Active Directory

              domain.

              If not specified, defaults to the name of the Active Directory

              configuration.

              '
            type: string
            example: FLASHBLADE01
          directory_servers:
            description: 'A list of directory servers that will be used for lookups related to user authorization.

              Accepted server formats are IP address and DNS name.

              All specified servers must be registered to the domain appropriately in the array''s

              configured DNS and will only be communicated with over the secure LDAP (LDAPS) protocol.

              If not specified, servers are resolved for the domain in DNS.

              The specified list can have a maximum length of 5.

              '
            type: array
            maxItems: 5
            items:
              type: string
              example: ldap.my-corporation.com
          domain:
            description: The Active Directory domain to join.
            type: string
            example: my-corporation.com
          encryption_types:
            description: 'The encryption types that will be supported for use by clients for Kerberos

              authentication.

              Defaults to `aes256-cts-hmac-sha1-96`.

              Valid values include `aes256-cts-hmac-sha1-96`, `aes128-cts-hmac-sha1-96`, and

              `arcfour-hmac`.

              Cannot be provided if using an existing machine account.

              '
            type: array
            items:
              type: string
              example: aes256-cts-hmac-sha1-96
          fqdns:
            description: 'A list of fully qualified domain names to use to register service principal

              names for the machine account. If specified, every service principal that

              is supported by the array will be registered for each fully qualified domain

              name specified. If neither `fqdns` nor `service_principal_names` is specified,

              the default `service_principal_names` are constructed using

              the `computer_name` and `domain` fields.

              Cannot be provided in combination with `service_principal_names`.

              Cannot be provided if using an existing machine account.

              '
            type: array
            maxItems: 32
            items:
              type: string
              example: vip1.my-array.my-corporation.com
          join_ou:
            description: 'The relative distinguished name of the organizational unit in which the

              computer account should be created when joining the domain.

              Cannot be provided if using an existing machine account.

              If not specified, defaults to `CN=Computers`.

              '
            type: string
            example: CN=Computers
          kerberos_servers:
            description: 'A list of key distribution servers to use for Kerberos protocol.

              Accepted server formats are IP address and DNS name.

              All specified servers must be registered to the domain appropriately in the array''s

              configured DNS.

              If not specified, servers are resolved for the domain in DNS.

              The specified list can have a maximum length of 5.

              '
            type: array
            maxItems: 5
            items:
              type: string
              example: kdc.my-corporation.com
          password:
            description: 'The login password of the user with privileges to create the computer account

              in the domain. If using an existing computer account, the user must have privileges to

              read attributes from the computer account and reset the password on that account.

              This is not persisted on the array.

              '
            type: string
            example: Anything#but$adMinistrat0r
          service_principal_names:
            description: 'A list of service principal names to register for the machine account,

              which can be used for the creation of keys for Kerberos authentication.

              If neither `service_principal_names` nor `fqdns` is specified,

              the default `service_principal_names` are constructed using

              the `computer_name` and `domain` fields.

              Cannot be provided in combination with `fqdns`.

              Cannot be provided if using an existing machine account.

              '
            type: array
            maxItems: 32
            items:
              pattern: (service)/(fqdn)
              type: string
              example: nfs/vip1.my-array.my-corporation.com
          user:
            description: 'The login name of the user with privileges to create the computer account in

              the domain. If using an existing computer account, the user must have privileges to

              read attributes from the computer account and reset the password on that account.

              This is not persisted on the array.

              '
            type: string
            example: Administrator
    TestResultWithResource:
      allOf:
      - $ref: '#/components/schemas/TestResult'
      - $ref: '#/components/schemas/_context'
      - type: object
        properties:
          resource:
            description: A reference to the object being tested.
            title: FixedReferenceNoId
            allOf:
            - $ref: '#/components/schemas/_fixedReferenceNoId'
    _errorContextResponse_2:
      type: object
      properties:
        errors:
          description: The list of errors encountered when attempting to perform an operation.
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/_errorContextResponseErrors'
    ActiveDirectoryPatch:
      type: object
      properties:
        sources:
          description: 'List of network interfaces used for egress. For directory services

            at the array level, the list can be empty.

            If the list is empty, the system will use VIFs with the "ds" service

            (or if none, the "management" service) for egress.

            '
          type: array
          items:
            $ref: '#/components/schemas/_reference'
        tls:
          description: 'TLS mode for communication with domain controllers.

            Valid values are `required` and `optional`.

            `required` forces TLS communication with domain controller.

            `optional` allows the use of non-TLS communication,

            TLS will still be preferred, if available.

            If not specified, defaults to `required`.

            '
          type: string
          example: required
    _referenceWithType:
      allOf:
      - $ref: '#/components/schemas/_reference'
      - type: object
        properties:
          resource_type:
            description: 'Type of the object (full name of the endpoint).

              Valid values are `hosts`, `host-groups`, `network-interfaces`, `pods`,

              `ports`, `pod-replica-links`, `subnets`, `volumes`, `volume-snapshots`,

              `volume-groups`, `directories`, `policies/nfs`, `policies/smb`, and

              `policies/snapshot`, etc.

              '
            type: string
      x-aliases:
      - _reference
    _fixedReferenceWithoutType:
      type: object
      properties:
        id:
          description: 'A globally unique, system-generated ID.

            The ID cannot be modified.

            '
          type: string
          readOnly: true
        name:
          description: 'The resource name, such as volume name, file system name,

            snapshot name, and so on.

            '
          type: string
          readOnly: true
      x-readOnly: true
    ActiveDirectoryPost:
      type: object
      properties:
        computer_name:
          description: 'The name of the computer account to be created in the Active Directory

            domain.

            If not specified, defaults to the name of the Active Directory

            configuration.

            '
          type: string
          example: FLASHARRAY01
        directory_servers:
          description: 'A list of directory servers used for lookups related to user authorization.

            Servers must be specified in FQDN format.

            All specified servers must be registered to the domain appropriately in the configured DNS

            of the array and are only communicated with over the secure LDAP (LDAPS) protocol.

            If not specified, servers are resolved for the domain in DNS.

            '
          type: array
          items:
            type: string
            example: ldap.my-corporation.com
        domain:
          description: The Active Directory domain to join.
          type: string
          example: my-corporation.com
        join_ou:
          description: 'The distinguished name of the organizational unit in which the

            computer account should be created when joining the domain.

            The `DC=...` components of the distinguished name can be optionally omitted.

            If not specified, defaults to `CN=Computers`.

            '
          type: string
          example: OU=Dev,OU=Sweden,DC=purestorage,DC=com
        kerberos_servers:
          description: 'A list of key distribution servers to use for Kerberos protocol.

            Servers must be specified in FQDN format.

            All specified servers must be registered to the domain appropriately in the configured DNS

            of the array.

            If not specified, servers are resolved for the domain in DNS.

            '
          type: array
          items:
            type: string
            example: kdc.my-corporation.com
        password:
          description: 'The login password of the user with privileges to create the computer account

            in the domain.

            This is not persisted on the array.

            '
          type: string
          example: password
        sources:
          description: 'List of network interfaces used for egress. For directory services

            at the array level, this list can be empty. If

            the list is empty, the system will use VIFs with the "ds" service

            (or if none, the "management" service) for egress.

            '
          type: array
          items:
            $ref: '#/components/schemas/_reference'
        tls:
          description: 'TLS mode for communication with domain controllers.

            Valid values are `required` and `optional`.

            `required` forces TLS communication with a domain controller.

            `optional` allows the use of non-TLS communication,

            TLS will still be preferred, if available.

            If not specified, defaults to `required`.

            '
          type: string
          example: required
        user:
          description: 'The login name of the user with privileges to create the computer account in

            the domain.

            This is not persisted on the array.

            '
          type: string
          example: Administrator
    _context_2:
      type: object
      properties:
        context:
          description: 'The context in which the operation was performed.


            Valid values include a reference to any array which is a member of the same fleet

            or to the fleet itself.


            Other parameters provided with the request, such as names of volumes or snapshots,

            are resolved relative to the provided `context`.

            '
          readOnly: true
          title: FixedReference
          allOf:
          - $ref: '#/components/schemas/_fixedReference_2'
    _realmsReference:
      type: object
      properties:
        realms:
          description: 'Reference to the realms this resource belongs to.

            The value is set to empty array when the resource

            lives outside of a realm.

            '
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/_fixedReference_2'
    ActiveDirectoryDirectoryServers:
      type: object
      properties:
        directory_servers:
          description: 'A list of directory servers that will be used for lookups related to user authorization.

            Accepted server formats are IP address and DNS name with optional @domain suffix.

            If the suffix is ommited, the joined domain is assumed.

            All specified servers must be registered to the domain appropriately in the array''s

            configured DNS and will only be communicated with over the secure LDAP (LDAPS) protocol.

            The specified list can have a maximum length of 50.

            '
          type: array
          maxItems: 50
          items:
            type: string
            example: ldap.my-corporation.com
        global_catalog_servers:
          description: 'A list of global catalog servers that will be used for lookups related to user authorization.

            Accepted server formats are IP address and DNS name with optional @domain suffix.

            If the suffix is ommited, the joined domain is assumed.

            All specified servers must be registered to the domain appropriately in the array''s

            configured DNS and will only be communicated with over the secure LDAP (LDAPS) protocol.

            The specified list can have a maximum length of 50.

            '
          type: array
          maxItems: 50
          items:
            type: string
            example: gc.my-corporation.com
    ActiveDirectoryResponse_2:
      type: object
      properties:
        items:
          description: A list of Active Directory computer account configuration objects.
          type: array
          items:
            $ref: '#/components/schemas/ActiveDirectory_2'
    _reference:
      type: object
      properties:
        id:
          description: 'A globally unique, system-generated ID.

            The ID cannot be modified.

            '
          type: string
        name:
          description: 'The resource name, such as volume name, pod name,

            snapshot name, and so on.

            '
          type: string
      x-aliases:
      - _referenceWithoutType
    ActiveDirectory_2:
      allOf:
      - $ref: '#/components/schemas/_builtIn'
      - $ref: '#/components/schemas/_realmsReference'
      - type: object
        properties:
          computer_name:
            description: 'The common name of the computer account to be created in the Active Directory

              domain.

              If not specified, defaults to the name of the Active Directory

              configuration.

              '
            type: string
            example: FLASHBLADE01
          directory_servers:
            description: 'A list of directory servers that will be used for lookups related to user authorization.

              Accepted server formats are IP address and DNS name with optional @domain suffix.

              If the suffix is ommited, the joined domain is assumed.

              All specified servers must be registered to the domain appropriately in the array''s

              configured DNS and will only be communicated with over the secure LDAP (LDAPS) protocol.

              '
            type: array
            items:
              type: string
              example: ldap.my-corporation.com
          domain:
            description: The Active Directory domain to join.
            type: string
            example: my-corporation.com
          encryption_types:
            description: 'The encryption types that are supported for use by clients for Kerberos

              authentication.

              '
            type: array
            items:
              type: string
              example: aes256-cts-hmac-sha1-96
          global_catalog_servers:
            description: 'A list of global catalog servers that will be used

              for lookups related to user authorization.

              Accepted server formats are IP address and DNS name with optional @domain suffix.

              If the suffix is ommited, the joined domain is assumed.

              All specified servers must be registered to the domain appropriately in the array''s

              configured DNS and will only be communicated with over the secure LDAP (LDAPS) protocol.

              '
            type: array
            items:
              type: string
              example: gc.my-corporation.com
          join_ou:
            description: 'The relative distinguished name of the organizational unit in which the

              computer account was created when joining the domain.

              '
            type: string
            example: CN=Computers
          kerberos_servers:
            description: 'A list of key distribution servers to use for Kerberos protocol.

              Accepted server formats are IP address and DNS name.

              All specified servers must be registered to the domain appropriately in the array''s

              configured DNS.

              '
            type: array
            items:
              type: string
              example: krb-host.my-corporation.com
          server:
            description: 'The server containing this active directory account.

              '
            title: FixedReference
            allOf:
            - $ref: '#/components/schemas/_fixedReference_2'
          service_principal_names:
            description: 'A list of service principal names registered for the machine account,

              which can be used for the creation of keys for Kerberos authentication.

              '
            type: array
            items:
              pattern: (service)/(fqdn)
              type: string
              example: nfs/vip1.my-array.my-corporation.com
    TestResult:
      type: object
      properties:
        component_address:
          description: Address of the component running the test.
          type: string
          example: 10.230.94.21
        component_name:
          description: Name of the component running the test.
          type: string
          example: CT0
        description:
          description: What the test is doing.
          type: string
          example: Testing phonehome connectivity
        destination:
          description: The URI of the target server being tested.
          type: string
          example: ra.cloud-support.purestorage.com
        enabled:
          description: 'Whether the object being tested is enabled or not.

            Returns a value of `true` if the the service is enabled.

            Returns a value of `false` if the service is disabled.

            '
          type: boolean
          example: true
        result_details:
          description: Additional information about the test result.
          type: string
          example: Timeout connecting to phonehome endpoint
        success:
          description: 'Whether the object being tested passed the test or not.

            Returns a value of `true` if the specified test has succeeded.

            Returns a value of `false` if the specified test has failed.

            '
          type: boolean
        test_type:
          description: 'Displays the type of test being performed. The returned values are determined

            by the `resource` being tested and its configuration.

            Values include `array-admin-group-searching`, `binding`, `connecting`, `phonehome`,

            `phonehome-ping`, `remote-assist`, `rootdse-searching`, `read-only-g

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/openapi/pure-storage-active-directory-api-openapi.yml