western-digital Configuration API

Retrieve dynamic service endpoint configuration.

OpenAPI Specification

western-digital-configuration-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: WD My Cloud Home Authentication Configuration API
  description: The WD My Cloud Home REST API enables off-device applications to manage files and folders on a user's My Cloud Home NAS device. It supports file upload, download, listing, search, sharing, thumbnails, and device discovery via OAuth 2.0 authentication.
  version: v2
  termsOfService: https://www.westerndigital.com/legal/terms-of-use
  contact:
    name: Western Digital Developer Support
    url: https://developer.westerndigital.com/develop/wd-my-cloud-home/forms.html
  license:
    name: Western Digital Developer Terms
    url: https://developer.westerndigital.com/develop/wd-my-cloud-home/
servers:
- url: https://config.mycloud.com
  description: Configuration service — call first to get device and auth URLs
- url: https://device.mycloud.com
  description: Device service (dynamically resolved per device)
- url: https://wdc.auth0.com
  description: Authentication service
tags:
- name: Configuration
  description: Retrieve dynamic service endpoint configuration.
paths:
  /config/v1/config:
    get:
      operationId: getServiceConfiguration
      summary: Get Service Configuration
      description: Returns all service endpoint URLs used by My Cloud Home applications, including device, auth, and network service URLs. Applications must call this endpoint first to resolve dynamic service URLs before making subsequent API calls.
      tags:
      - Configuration
      responses:
        '200':
          description: Service configuration object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceConfiguration'
              example:
                data:
                  cloud:
                    service:
                      urls:
                        componentMap:
                          service.device.url: https://device.mycloud.com
                          service.devicenetwork.url: https://devicenetwork.mycloud.com
                          service.auth0.url: https://wdc.auth0.com
                          service.auth.url: https://auth.mycloud.com
components:
  schemas:
    ServiceConfiguration:
      type: object
      description: Dynamic service endpoint configuration.
      properties:
        data:
          type: object
          properties:
            cloud:
              type: object
              properties:
                service:
                  type: object
                  properties:
                    urls:
                      type: object
                      properties:
                        componentMap:
                          type: object
                          additionalProperties:
                            type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 Bearer token obtained via the /oauth/token endpoint. Include in Authorization header as "Bearer {token}".