Workday Report Writer Data Sources API

Discover available data sources (tables) that can be queried using WQL, including their fields and filter definitions

OpenAPI Specification

workday-report-writer-data-sources-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Workday Report Writer Workday Prism Analytics Buckets Data Sources API
  description: REST API for working with Workday Prism Analytics tables, datasets, and data change tasks. Enables programmatic loading of external data into Prism Analytics for advanced reporting and analytics that combines internal Workday data with external sources. Supports creating tables with schema definitions, uploading compressed data files via buckets, and executing data change tasks to apply inserts, updates, upserts, and deletes.
  version: v3
  contact:
    name: Workday Support
    url: https://www.workday.com/en-us/company/contact-us.html
  termsOfService: https://www.workday.com/en-us/legal.html
servers:
- url: https://{hostname}/api/prismAnalytics/v3/{tenant}
  description: Workday Prism Analytics Production
  variables:
    hostname:
      description: Workday data center hostname, varies by tenant deployment
      default: wd2-impl-services1.workday.com
    tenant:
      description: Workday tenant name
      default: your-tenant
security:
- bearerAuth: []
tags:
- name: Data Sources
  description: Discover available data sources (tables) that can be queried using WQL, including their fields and filter definitions
paths:
  /dataSources:
    get:
      operationId: listDataSources
      summary: Workday Report Writer List Available Data Sources
      description: Retrieve a collection of data sources (tables) available for querying with WQL. Each data source represents a queryable entity in the Workday data model.
      tags:
      - Data Sources
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: Data sources retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  total:
                    type: integer
                    description: Total number of available data sources
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/DataSource'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /dataSources/{dataSourceId}:
    get:
      operationId: getDataSource
      summary: Workday Report Writer Get a Data Source
      description: Retrieve details about a specific data source including its description and available fields for use in WQL queries.
      tags:
      - Data Sources
      parameters:
      - $ref: '#/components/parameters/dataSourceId'
      responses:
        '200':
          description: Data source details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataSource'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /dataSources/{dataSourceId}/fields:
    get:
      operationId: listDataSourceFields
      summary: Workday Report Writer List Data Source Fields
      description: Retrieve the fields (columns) available in a specific data source. These fields can be used in SELECT, WHERE, and ORDER BY clauses of WQL queries.
      tags:
      - Data Sources
      parameters:
      - $ref: '#/components/parameters/dataSourceId'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: Data source fields retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  total:
                    type: integer
                    description: Total number of fields
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/DataSourceField'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /dataSources/{dataSourceId}/filters:
    get:
      operationId: listDataSourceFilters
      summary: Workday Report Writer List Data Source Filters
      description: Retrieve the filterable fields available for a specific data source. These filters can be used as parameters in WQL WHERE clauses with the dataSourceFilter syntax.
      tags:
      - Data Sources
      parameters:
      - $ref: '#/components/parameters/dataSourceId'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: Data source filters retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  total:
                    type: integer
                    description: Total number of filters
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/DataSourceFilter'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    limit:
      name: limit
      in: query
      description: Maximum number of results to return per page
      schema:
        type: integer
        default: 20
        maximum: 100
    offset:
      name: offset
      in: query
      description: Number of results to skip for pagination
      schema:
        type: integer
        default: 0
    dataSourceId:
      name: dataSourceId
      in: path
      required: true
      description: Unique identifier of the data source
      schema:
        type: string
  schemas:
    DataSource:
      type: object
      description: A queryable data source (table) in the Workday data model that can be used in WQL FROM clauses
      properties:
        id:
          type: string
          description: Unique identifier of the data source
        descriptor:
          type: string
          description: Display name of the data source
        href:
          type: string
          format: uri
          description: API URL for the data source resource
    DataSourceFilter:
      type: object
      description: A filter definition for a data source that can be used as a parameter in WQL WHERE clauses
      properties:
        id:
          type: string
          description: Unique identifier of the filter
        descriptor:
          type: string
          description: Display name of the filter
        alias:
          type: string
          description: Alias name used to reference the filter in WQL queries
        dataType:
          type: string
          description: Expected data type for filter values
        required:
          type: boolean
          description: Whether this filter is required when querying
    DataSourceField:
      type: object
      description: A field (column) within a data source that can be used in WQL SELECT, WHERE, and ORDER BY clauses
      properties:
        id:
          type: string
          description: Unique identifier of the field
        descriptor:
          type: string
          description: Display name of the field
        alias:
          type: string
          description: Alias name used to reference the field in WQL queries
        dataType:
          type: string
          description: Data type of the field
          enum:
          - Text
          - Numeric
          - Date
          - DateTime
          - Boolean
          - Currency
          - RichText
        ordinal:
          type: integer
          description: Position index of the field within the data source
        isRequired:
          type: boolean
          description: Whether the field is required for queries
  responses:
    Unauthorized:
      description: Authentication credentials are missing or invalid, or the OAuth 2.0 token lacks the required Workday Query Language scope
    NotFound:
      description: The specified data source was not found
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 bearer token obtained from Workday token endpoint. Requires the Prism Analytics scope.
externalDocs:
  description: Workday Prism Analytics API Documentation
  url: https://doc.workday.com/admin-guide/en-us/workday-prism-analytics/workday-prism-analytics-api.html