Moveworks Default API

The Default API from Moveworks — 14 operation(s) for default.

OpenAPI Specification

moveworks-default-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: (Beta) Conversations authentication  API
  version: 1.0.0
servers:
- url: https://api.moveworks.ai/rest/v1beta1
  description: US production server
- url: https://api.jp.moveworks.com/rest/v1beta1
  description: Japan production server
- url: https://api.uk.moveworks.com/rest/v1beta1
  description: UK production server
- url: https://api.prod4.us.moveworks.com/rest/v1beta1
  description: US Prod 4 production server
- url: https://api.prod3.us.moveworks.com/rest/v1beta1
  description: US Prod 3 production server
tags:
- name: ''
paths:
  /files:
    get:
      operationId: list-files
      summary: List files
      description: 'Retrieve files in a specific node, providing features like querying, filtering, and detailed navigational information including parent folder details and direct download URLs.

        '
      tags:
      - ''
      parameters:
      - name: $filter
        in: query
        description: Filter content items by a condition.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Select which properties to include in the response for the content items.
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: Order content items by specific fields.
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: Specify the number of content results to return.
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: Skip the first n content results.
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: Successfully retrieved list of content items with enhanced information.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ODataContentResponse'
        '400':
          description: Bad Request - The request could not be understood due to malformed syntax.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - Authentication is required and has failed or has not yet been provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - Server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /files/{id}:
    get:
      operationId: get-file-metadata-and-html-content-body
      summary: Get file metadata and HTML content body
      description: 'Retrieves metadata and content for a specific file. When the content type is HTML (mime_type: text/html), this endpoint returns the actual HTML content in the response body. For other file types, it provides download path information.

        '
      tags:
      - ''
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Successfully retrieved metadata of content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ODataContentMetadataResponse'
        '400':
          description: Bad Request - The request could not be understood by the server due to malformed syntax.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - Authentication is required and has failed or has not yet been provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - Server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested file could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /files/{id}/download:
    get:
      operationId: download-file
      summary: Download file
      description: 'Retrieves and downloads the entire media file based on the specified file ID.


        The response body is the raw binary content of the file. Treat the response body as a byte stream and write it directly to disk or pass it to a file handler.


        The `Content-Type` response header indicates the MIME type of the file (e.g. `application/pdf`, `text/html`). Use this to determine how to handle or display the file.


        The `Checksum-SHA256` response header provides a SHA-256 hash of the file contents. Verify this value against the downloaded bytes to confirm the file was not corrupted in transit.

        '
      tags:
      - ''
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Successfully retrieved the file. The response body is the raw binary content of the file.
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          description: Bad Request - The request could not be understood by the server due to malformed syntax.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - Authentication is required and has failed or has not yet been provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - Server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested file could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /users:
    get:
      operationId: list-users
      summary: List users
      description: Retrieve a paginated list of users using OData parameters.
      tags:
      - ''
      parameters:
      - name: $top
        in: query
        description: Number of items to return per page (default pagination)
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: Number of items to skip (default pagination offset)
        required: false
        schema:
          type: integer
      - name: $skiptoken
        in: query
        description: Used when the query parameters can be memoized into an encoded string containing filtering and pagination parameters. If the endpoint supports memoized paging, the first call can use $top and $skip, while @odata.nextLink will return with $skiptoken. If memoized querying is not supported, $top and $skip should be sufficient.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        required: false
        schema:
          type: string
      - name: $select
        in: query
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: User list response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserCollection'
        '400':
          description: Bad Request - The request was invalid or cannot be served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - The request requires user authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - The server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service Unavailable - The server is currently unable to handle the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /groups:
    get:
      operationId: list-groups
      summary: List groups
      description: Retrieve a paginated list of groups using OData parameters.
      tags:
      - ''
      parameters:
      - name: $top
        in: query
        description: Number of items to return per page (default pagination)
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: Number of items to skip (default pagination offset)
        required: false
        schema:
          type: integer
      - name: $skiptoken
        in: query
        description: Used when the query parameters can be memoized into an encoded string containing filtering and pagination parameters. If the endpoint supports memoized paging, the first call can use $top and $skip, while @odata.nextLink will return with $skiptoken. If memoized querying is not supported, $top and $skip should be sufficient.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        required: false
        schema:
          type: string
      - name: $select
        in: query
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Group list response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupCollection'
        '400':
          description: Bad Request - The request was invalid or cannot be served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - The request requires user authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - The server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service Unavailable - The server is currently unable to handle the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /groups/{groupId}/members:
    get:
      operationId: list-group-members
      summary: List group members
      description: List direct members (users or groups) of a group. No recursion supported.
      tags:
      - ''
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      - name: $top
        in: query
        description: Number of items to return per page (default pagination)
        required: false
        schema:
          type: integer
      - name: $skiptoken
        in: query
        description: Used when the query parameters can be memoized into an encoded string containing filtering and pagination parameters. If the endpoint supports memoized paging, the first call can use $top and $skip, while @odata.nextLink will return with $skiptoken. If memoized querying is not supported, $top and $skip should be sufficient.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        required: false
        schema:
          type: string
      - name: $select
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Group members list response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMemberCollection'
        '400':
          description: Bad Request - The request was invalid or cannot be served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - The request requires user authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - The server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service Unavailable - The server is currently unable to handle the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /files/permissions/metadata:
    get:
      operationId: get-permission-model-metadata
      summary: Get permission model metadata
      description: 'Returns the current permission evaluation model. NOTE: `resource_permissions` is the only supported model at this time.'
      tags:
      - ''
      responses:
        '200':
          description: Permissions metadata response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionsMetadata'
        '400':
          description: Bad Request - The request was invalid or cannot be served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - The request requires user authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - The server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service Unavailable - The server is currently unable to handle the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /files/{id}/permissions:
    get:
      operationId: get-content-permissions
      summary: Get content permissions
      description: Returns all user/group permissions on content. If permission model is 'hierarchy_permission', then `permissions_hierarchy` must be provided in the response.
      tags:
      - ''
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: $top
        in: query
        description: Number of items to return per page (default pagination)
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: Number of items to skip (default pagination offset)
        required: false
        schema:
          type: integer
      - name: $skiptoken
        in: query
        description: Used when the query parameters can be memoized into an encoded string containing filtering and pagination parameters. If the endpoint supports memoized paging, the first call can use $top and $skip, while @odata.nextLink will return with $skiptoken. If memoized querying is not supported, $top and $skip should be sufficient.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        required: false
        schema:
          type: string
      - name: $select
        in: query
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Content permission response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionCollection'
        '400':
          description: Bad Request - The request was invalid or cannot be served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - The request requires user authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - The server understood the request but refuses to authorize it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found - The requested resource could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests - Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error - The server encountered an unexpected condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service Unavailable - The server is currently unable to handle the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /conversations:
    get:
      operationId: list-conversations
      summary: List conversations
      description: Retrieve all conversations occurring with the Moveworks AI Assistant.
      tags:
      - ''
      parameters:
      - name: $filter
        in: query
        description: This option allows the client to filter the resource that is address by request URL
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: This option allow the client to request a limited set of properties of an entity
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: This option allow the client to request resources in either ascending or descending order
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: This option request the number of items to be included in the result
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: This query option requests the number of items in the queried collection that are to be skipped and not included in the result.
        required: false
        schema:
          type: integer
      - name: $count
        in: query
        description: This option allows clients to request a count of the matching resources included with the resources in the result
        required: false
        schema:
          type: boolean
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved list of conversations
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/conversations'
        '400':
          description: Bad request error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403ErrorResponse'
        '404':
          description: URL not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/404ErrorResponse'
        '429':
          description: Rate limiting exceeding error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500ErrorResponse'
  /interactions:
    get:
      operationId: list-interactions
      summary: List interactions
      description: Retrieve all interactions occurring with the Moveworks AI Assistant.
      tags:
      - ''
      parameters:
      - name: $filter
        in: query
        description: This option allows the client to filter the resource that is address by request URL
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: This option allow the client to request a limited set of properties of an entity
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: This option allow the client to request resources in either ascending or descending order
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: This option request the number of items to be included in the result
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: This query option requests the number of items in the queried collection that are to be skipped and not included in the result.
        required: false
        schema:
          type: integer
      - name: $count
        in: query
        description: This option allows clients to request a count of the matching resources included with the resources in the result
        required: false
        schema:
          type: boolean
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved list of interactions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/interactions'
        '400':
          description: Bad request error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403ErrorResponse'
        '404':
          description: URL not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/404ErrorResponse'
        '429':
          description: Rate limiting exceeding error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500ErrorResponse'
  /plugin-calls:
    get:
      operationId: list-plugins-calls
      summary: List plugins calls
      description: Retrieve all plugins that were called by the Moveworks AI Assistant during an interaction.
      tags:
      - ''
      parameters:
      - name: $filter
        in: query
        description: This option allows the client to filter the resource that is address by request URL
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: This option allow the client to request a limited set of properties of an entity
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: This option allow the client to request resources in either ascending or descending order
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: This option request the number of items to be included in the result
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: This query option requests the number of items in the queried collection that are to be skipped and not included in the result.
        required: false
        schema:
          type: integer
      - name: $count
        in: query
        description: This option allows clients to request a count of the matching resources included with the resources in the result
        required: false
        schema:
          type: boolean
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved list of plugins calls
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/plugincallslist'
        '400':
          description: Bad request error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403ErrorResponse'
        '404':
          description: URL not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/404ErrorResponse'
        '429':
          description: Rate limiting exceeding error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500ErrorResponse'
  /plugin-resources:
    get:
      operationId: list-plugin-resources
      summary: List Plugin Resources
      description: Retrieve all resources used by AI Assistant during an interaction.
      tags:
      - ''
      parameters:
      - name: $filter
        in: query
        description: This option allows the client to filter the resource that is address by request URL
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: This option allow the client to request a limited set of properties of an entity
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: This option allow the client to request resources in either ascending or descending order
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: This option request the number of items to be included in the result
        required: false
        schema:
          type: integer
      - name: $skip
        in: query
        description: This query option requests the number of items in the queried collection that are to be skipped and not included in the result.
        required: false
        schema:
          type: integer
      - name: $count
        in: query
        descripti

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