openapi: 3.1.0
info:
  title: Blueworks Live REST APIs
  version: "1.0"
  description: |-
    The Blueworks Live API provides access to a limited subset of the available Blueworks Live functions, 
    such as search, list process details, and launch work instances. All access to the API requires 
    authentication using either an access token that can have global access to the account or can be 
    restricted to what's permitted for a specific user, or a valid username and password that is restricted 
    based on the normal Blueworks Live roles and permissions. Viewers and community members do not have 
    access to the API.
externalDocs:
  description: Blueworks Live API
  url: https://www.ibm.com/docs/en/blueworks-live?topic=live-blueworks-api
servers:
  - url: https://{region}.blueworkslive.com
    variables:
      region:
        default: www
        enum:
          - www
          - ibm
          - ams001
          - che001
          - mel001
          - us001
          - us006
tags:
  - name: Authentication
    description: Use OAuth 2 authentication with client credentials. Automated systems use a Service ID/User Service ID to request a token.
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=live-blueworks-api#bwl_rest_api__Authentication__title__1
  - name: Account Activity
    description: Retrieve information about account activities or a user's activity stream.
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=api-account-activity-reporting
  - name: Artifact Authoring
    description: Move, copy, rename, or archive an artifact, add comments, respond to comments, add file attachments, and create revisions.
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=api-artifact-authoring
  - name: Artifact Reporting
    description: Find, get details, and get usage information for artifacts attachments, and create revisions
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=api-artifact-reporting
  - name: User Management
    description: Perform user management tasks and query user data
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=api-user-management
  - name: Work Management
    description: Query data about in-flight and completed tasks, launch new work, and complete or comment on existing work
    externalDocs:
      description: Docs
      url: https://www.ibm.com/docs/en/blueworks-live?topic=api-work-management
  - name: Attachments
    description: Download or list attachments.
  - name: Blueprints
    description: Find, get details, and export blueprints.
  - name: Glossary
    description: Find glossary values or find out where specific glossary values are used.
  - name: Policies
    description: Find, get details, or find out where policies are used.
  - name: Spaces
    description: Find and get details of spaces.
  - name: Exporting and Printing
    description: Export and print
  - name: Where Used
    description: Use this resource to retrieve information about where a specific instance is used.
  - name: Search
    description: Use this resource to search for text.
paths:
  /scr/api/activity:
    get:
      tags:
        - Account Activity
      summary: Retrieves information about activities in the account
      description: |-
        Use this method to retrieve information about activities in the account. Specify the types of 
        activities to retrieve and the time period in which they occurred. The user's permissions in the 
        account define restrictions on returned information.
      parameters:
        - name: startDate
          in: query
          description: |-
            The start date of the account activities to return. 

            The date must be in ISO 8601 format (example: 2013-04-01T08:00:00.000-06:00).
          required: true
          schema:
            type: string
            format: date-time
        - name: endDate
          in: query
          description: |-
            The end date of the account activities to return. 

            The date must be in ISO 8601 format (example : 2013-04-01T08:00:00.000-06:00). 

            The endDate value must be after the startDate value, but by not more than 31 days
          required: true
          schema:
            type: string
            format: date-time
        - name: type
          in: query
          description: |-
            Specify one or more types of account activity to return. 

            Any combination of types can be specified as comma-separated values.

            Some types are logical groupings of other types so they can return collections of similar data:

            - __ITEMS_VIEWED__ includes _PROCESSES_VIEWED, POLICIES_VIEWED, DECISIONS_VIEWED, SPACES_VIEWED_
            - __COMMENTS__ includes _PROCESS_COMMENTS, DECISION_COMMENTS_
            - __ITEMS_CHANGED__ includes _PROCESSES_CHANGED, POLICIES_CHANGED, DECISIONS_CHANGED, SPACES_CHANGED_
            - __SNAPSHOTS__ includes _PROCESS_SNAPSHOTS, POLICY_SNAPSHOTS, DECISION_SNAPSHOTS_
          required: true
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - LOGINS
                - PROCESSES_VIEWED
                - POLICIES_VIEWED
                - DECISIONS_VIEWED
                - SPACES_VIEWED
                - ITEMS_VIEWED
                - PROCESS_COMMENTS
                - DECISION_COMMENTS
                - COMMENTS
                - USERS_JOINED
                - PROCESSES_CHANGED
                - POLICIES_CHANGED
                - DECISIONS_CHANGED
                - SPACES_CHANGED
                - ACCOUNT_CHANGED
                - ITEMS_CHANGED
                - PROCESS_SNAPSHOTS
                - POLICY_SNAPSHOTS
                - DECISION_SNAPSHOTS
                - SNAPSHOTS

      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Activity"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        405:
          $ref: "#/components/responses/405SelectGET"
  /scr/api/NewsFeed:
    get:
      tags:
        - Account Activity
      summary: Use this resource to retrieve an activity stream of a user
      description: |-
        Use this method to retrieve an activity stream of a user.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Messages"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /bwl/artifacts/{artifact-id}:
    put:
      tags:
        - Artifact Authoring
      summary: Moves, renames, or archives a space, process, decision, policy, or process app, or publishes or unpublishes a process or decision.
      description: |-
        Use this method to move an artifact to another space, rename an artifact, archive an artifact, or publish or unpublish a process or decision.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/artifactIdPath"
        - name: action
          in: query
          description: The action to perform on the artifact.
          required: true
          schema:
            type: string
            enum:
              - move
              - rename
              - archive
              - publish
              - unpublish
        - name: revision-id
          in: query
          description: The ID of the revision of the process or decision to publish. This parameter works only with the __publish__ action.
          required: false
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ArtifactInputSummary"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404RevisionDoesntExist"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
    post:
      tags:
        - Artifact Authoring
      summary: Copies a space, process, decision, policy, or process app.
      description: |-
        Use this method to copy an artifact, such as a space, process, decision, policy, or process app.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/artifactIdPath"
      requestBody:
        $ref: "#/components/requestBodies/ArtifactInputSummary"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArtifactsCopied"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        429:
          $ref: "#/components/responses/429RateLimitCopy100ph"
    delete:
      tags:
        - Artifact Authoring
      summary: Deletes a space, process, decision, policy, or process app.
      description: |-
        Use this method to delete a space, process, decision, policy, or process app. The artifact must be archived to be deleted. If the artifact has running instances or running governance workflows, or if deleting the artifact results in broken links, the deletion fails unless you add the __force__ parameter.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/artifactIdPath"
        - name: force
          in: query
          description: |-
            Force the deletion. If you set this parameter to true, the artifact is deleted even if it has running instances 
            or running governance workflows, and even if deleting it results in broken links. 
            Warnings and linkage errors are summarized in the response.
          required: false
          schema:
            type: boolean
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArtifactDeleteResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        "409":
          description: The command failed because the artifact has active links to it or work items based on it.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArtifactDeleteResult"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /scr/api/FileUpload:
    post:
      tags:
        - Artifact Authoring
        - Attachments
      summary: Adds file attachments to process activities or work items.
      description: Use this method to add file attachments to process activities or work items.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/xIBMAPIVersion20160630"
      requestBody:
        $ref: "#/components/requestBodies/FileUploadRequest"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        401:
          $ref: "#/components/responses/401Unauthorized"
        405:
          $ref: "#/components/responses/405SelectPOST"
  /bwl/glossary-values/{category}:
    put:
      tags:
        - Artifact Authoring
      summary: Adds or updates glossary values in a specific predefined category or custom process property.
      description: |-
        Use this method to add or update glossary values in a specific predefined category or custom process property. The tag and goal categories are not supported.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - name: category
          in: path
          description: |-
            The category of the glossary values to be created or updated. Possible values are
            - participant-businessowner-expert
            - externalparticipant
            - system
            - supplier-customer
            - input-output
            - problem
            - kpi
            - businessunit
            - _name of your custom process property_
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/GlossaryValueInputSummary"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GlossaryValuesUpdateResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404RevisionDoesntExist"
        429:
          $ref: "#/components/responses/429RateLimit30ph"
  /bwl/glossary-values/{value-id}:
    delete:
      tags:
        - Artifact Authoring
      summary: Deletes a value from the glossary.
      description: |-
        Use this method to delete any predefined or custom glossary value in any category except tag. 
        Glossary values can be deleted only if they are not currently used in other artifacts or 
        referenced from other glossary values.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/valueIdPath"
        - name: force
          in: query
          description: If true, the glossary value is deleted even if there are historical usages of it. By default, this parameter is false.
          required: false
          schema:
            type: boolean
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArtifactDeleteResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404RevisionDoesntExist"
        409:
          description: The command failed because the glossary value is or was in use.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GlossaryValueDeleteFailureResult"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /scr/api/PostComment:
    post:
      tags:
        - Artifact Authoring
      summary: Adds a comment to an activity or responds to an existing comment.
      description: |-
        Use this method to add a comment to an activity or to respond to an existing comment.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: activityId
          in: query
          description: The ID of the activity to which a comment is attached.
          required: true
          schema:
            type: string
        - name: comment
          in: query
          description: The text of the comment.
          required: true
          schema:
            type: string
        - name: parentCommentId
          in: query
          description: The ID of the comment that the user replies to with a new comment.
          schema:
            type: string
        - name: processId
          in: query
          description: The ID of the process that contains the activity to which a comment is attached.
          required: true
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  commentId:
                    type: string
                    description: The ID of the newly created comment.
                    examples:
                      - "5f504e13c80d6"
        401:
          $ref: "#/components/responses/401Unauthorized"
        405:
          $ref: "#/components/responses/405SelectPOST"
  /scr/api/revision/{type}/{artifact-id}:
    get:
      tags:
        - Artifact Reporting
      summary: Retrieves a list of revisions for a process, policy, or decision.
      description: |-
        Use this method to retrieve a list of revisions for a process, policy, or decision.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/revisionTypePath"
        - $ref: "#/components/parameters/artifactIdPath"
        - name: showAll
          in: query
          required: false
          description: |-
            If this parameter is set to true, all revisions (including system-created revisions) for a process or decision are returned. 
            Otherwise, only user-created revisions are returned.
          schema:
            type: boolean
            default: false
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RevisionResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
    post:
      tags:
        - Artifact Authoring
      summary: Retrieves a list of revisions for a process, policy, or decision.
      description: |-
        Use this method to retrieve a list of revisions for a process, policy, or decision.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion20160630"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/revisionTypePath"
        - $ref: "#/components/parameters/artifactIdPath"
        - name: label
          in: query
          description: The label of the revision
          required: true
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateRevisionResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/spaces:
    get:
      tags:
        - Artifact Reporting
        - Spaces
      summary: Returns a list of spaces that meet specified criteria.
      description: Use this method to return a list of spaces that meet specified criteria.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: archived-state
          in: query
          description: Filter the results based on the archived state of the artifact.
          required: false
          schema:
            type: string
            default: active
            enum:
              - active
              - archived
        - name: parent-space-id
          in: query
          description: The ID of the space to search within. If not specified, the search is account-wide. If this space contains child spaces, the child spaces will also be searched. If both parent-space-id and parent-space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
        - name: parent-space-name
          in: query
          description: The name of the space to search within. If not specified, the search is account-wide. If this space contains child spaces, the child spaces will also be searched. If both parent-space-id and parent-space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
        - name: top-space-only
          in: query
          description: If true, only top-level-spaces are returned in the response.
          schema:
            type: boolean
        - name: name
          in: query
          description: If specified, only space models with this exact name are returned.  Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
        - name: tag
          in: query
          description: If specified, only space models with this exact tag are returned.  Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LibraryArtifactFullSummaryList"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
    post:
      tags:
        - Artifact Authoring
        - Spaces
      summary: Creates a space.
      description: Use this method to create a space.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
      requestBody:
        $ref: "#/components/requestBodies/ArtifactInputSummary"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: The ID of the new space.
                    type: string
                    examples:
                      - "20012b"
                  name:
                    description: The name of the new space.
                    type: string
                    examples:
                      - New Space
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        429:
          $ref: "#/components/responses/429RateLimit500ph"
  /bwl/spaces/{space-id}:
    get:
      tags:
        - Artifact Reporting
        - Spaces
      summary: Retrieves information about a specific space.
      description: Use this method to return a list of spaces that meet specified criteria.
      parameters:
        - name: space-id
          in: path
          description: The identifier of the space to retrieve.
          required: true
          schema:
            type: string
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: archived-state
          in: query
          description: Filters the returned child artifacts based on the archived state of the artifact.
          required: false
          schema:
            type: string
            enum:
              - all
              - active
              - archived
            default: active
        - name: include-subspaces
          in: query
          description: Whether to include the subspaces in the response.
          required: false
          schema:
            type: boolean
            default: false
        - name: published-state
          in: query
          description: Filters the returned child artifacts based on the published state of the artifact.
          required: false
          schema:
            type: string
            enum:
              - all
              - published
              - unpublished
            default: all

      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SpaceDetails"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"

    put:
      tags:
        - Artifact Authoring
        - Spaces
      summary: Modifies the permissions of users or user-groups for a space.
      description: |-
        Use this method to add, edit or delete the permissions of user or user-groups for a space.
      parameters:
        - name: space-id
          in: path
          description: The identifier of the space to retrieve.
          required: true
          schema:
            type: string
        - name: operation
          in: query
          description: The type of operation.
          required: true
          schema:
            type: string
            enum:
              - add
              - update
              - delete
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
      requestBody:
        $ref: "#/components/requestBodies/SpacePermissionsRequest"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /scr/api/UpdateFavorites:
    post:
      tags:
        - Artifact Authoring
      summary: Updates a list of favorite process apps for the user.
      description: |-
        Use this method to update a list of favorite process apps for the user. 
        The list is saved in the order provided by the caller.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: favorites
          in: query
          required: true
          description: The list of item IDs for the user's favorite process apps. Only process app IDs are allowed for version `20110917`.
          content:
            application/json:
              schema:
                type: object
                allOf:
                  - $ref: "#/components/schemas/Favorites"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                allOf:
                  - $ref: "#/components/schemas/Favorites"
                properties:
                  version:
                    description: The version of the API used to create a response.
                    type: string
                    default: "20110917"
                    examples:
                      - "20110917"
                    enum:
                      - "20110917"
                examples:
                  - favorites:
                      - id: 5f500e1092496
                      - id: 5f500e10924ec
                    version: "20110917"

        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/FileDownload:
    get:
      tags:
        - Artifact Reporting
        - Attachments
      summary: Downloads a file that is attached to a process, an instance, or a comment.
      description: |-
        Use this method to download a file that is attached to a process, an instance, or a comment.

        The user must provide one of the following parameters to specify an object that the file is attached to:
        - __processId__
        - __instanceId__
        - __postId__

        If the file is attached to a post that is not posted yet or an instance that is not started yet, 
        then the user is not required to provide the __postId__ or __instanceId__.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: fileItemId
          in: query
          required: true
          description: |-
            The ID of the file item to download. 

            This parameter is returned as a property of the response from `FileUpload`, `ProcessData`, `WorkDetail`, or `AppDetail` responses. 

            For `FileUpload`, `WorkDetail`, and `AppDetail`, the value to be used is in the __id__ field. 

            For `ProcessData`, the value corresponds to the key in the __files__ dictionary.
          schema:
            type: string
        - name: instanceId
          in: query
          description: The ID of the instance that the file is attached to.
          required: false
          schema:
            type: string
        - name: postId
          in: query
          description: The ID of the post that the file is attached to.
          required: false
          schema:
            type: string
        - name: processId
          in: query
          description: The ID of the process that contains an activity with the file attachment.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/ListFiles:
    get:
      tags:
        - Artifact Reporting
        - Attachments
      summary: Retrieves a list of all or a range of files for the account.
      description: Use this method to retrieve a list of all or a range of files for the account.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: from
          in: query
          required: false
          description: |-
            Lists all files uploaded after this date. The date is represented with the following ISO 8601 date formats:

            - The long form is 2012-08-13T15:44:31.571-05:00.
            - The short form is 2012-08-13. 

              The short form dates are assumed to be midnight Central Standard Time (CST) of the date specified. 

              Therefore, 2012-07-25 is the same as 2012-07-25T00:00:00.000-05:00.
          schema:
            type: string
            format: date-time
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListFileDetails"
        400:
          $ref: "#/components/responses/400InvalidValues"
  /scr/api/ActivityDocumentation:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
      summary: Retrieves documentation for an activity.
      description: Use this method to retrieve documentation for an activity.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: activityId
          in: query
          description: The ID of the activity for which the documentation is retrieved.
          required: true
          schema:
            type: string
        - name: processId
          in: query
          description: The ID of the process that contains the activity.
          required: true
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                required:
                  - activityId
                type: object
                properties:
                  activityId:
                    description: The ID of the requested activity.
                    type: string
                    examples:
                      - 5f500e10928f0
                  name:
                    description: The activity documentation that contains HTML markup entered by the user.
                    type: string
                    examples:
                      - "<b><i><u>ActivityDocumentation API test<\\/u><\\/i><\\/b>"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/blueprints:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
        - Search
      summary: Returns a list of blueprints that meet specified criteria.
      description: Use this method to return a list of blueprints that meet specified criteria.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: archived-state
          in: query
          description: Filters the results based on the archived state of the artifact.
          required: false
          schema:
            type: string
            default: active
            enum:
              - active
              - archived
        - name: name
          in: query
          description: |-
            If specified, only blueprints with this exact name are returned. 

            Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
        - name: tag
          in: query
          description: |-
            If specified, only blueprints with this exact tag are returned. 

            Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
        - name: space-id
          in: query
          description: |-
            The identifier of the space to search within. 

            If not specified, the search is account wide. 

            If this space contains child spaces, the child spaces will also be searched. 

            If both a space-id and space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
        - name: space-name
          in: query
          description: |-
            The name of the space to search within. 

            If not specified, the search is account wide. 

            If both a space-id and space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BlueprintSummary"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/blueprints/{blueprint-id}:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
      summary: Retrieves information about a specific blueprint.
      description: Use this method to return the details of a specific blueprint.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
        - name: revision-id
          in: query
          description: |-
            The version of the blueprint that you want to retrieve. 

            You can get a list of available version IDs using the Revision API. 

            If you don't include this parameter, the latest version of the blueprint that is visible to you will be retrieved.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BlueprintDetails"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimitBlueprint200pm"
  /bwl/blueprints/{blueprint-id}/activities/{activity-id}/documentation:
    post:
      tags:
        - Artifact Authoring
        - Blueprints
      summary: Update documentation of an activity within a blueprint
      description: Use this resource to update documentation of an activity within a specified blueprint.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
        - name: activity-id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  description: The new description to give the activity. The description contains HTML markup.
                  type: string
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /bwl/blueprints/{blueprint-id}/activities/{activity-id}/details:
    put:
      tags:
        - Artifact Authoring
        - Blueprints
      summary: Update activity details within a blueprint
      description: Use this method to update activity details within a blueprint.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
        - name: activity-id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ProcessUpdateRequest"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /bwl/blueprints/import:
    post:
      tags:
        - Artifact Authoring
        - Blueprints
        - Exporting and Printing
      summary: Import a blueprint in a specified format.
      description: Use this method to import a blueprint in a specified format.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
      requestBody:
        $ref: "#/components/requestBodies/FileImportRequest"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  artifacts:
                    type: array
                    items:
                      type: object
                      properties:
                        artifact-id:
                          type: string
                        name:
                          type: string
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /bwl/blueprints/{blueprint-id}/export:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
        - Exporting and Printing
      summary: Exports a blueprint in a specified format. You must have access to this blueprint.
      description: Use this method to export a blueprint in a specified format.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
        - name: expand-all-subprocesses
          in: query
          description: If true, all subprocesses are expanded in the process diagram export.
          required: false
          schema:
            type: boolean
            default: false
        - name: format
          in: query
          description: The format that you want your export to be in.
          required: true
          schema:
            type: string
            default: docx
            enum:
              - docx
        - name: include-activity-numbering
          in: query
          description: If true, the activity numbers are included in the process diagram export.
          required: false
          schema:
            type: boolean
            default: false
        - name: include-color-legend
          in: query
          description: If true, the color legend is included in the process diagram export.
          required: false
          schema:
            type: boolean
            default: false
        - name: include-custom-footer
          in: query
          description: |-
            If true, the custom footer that was specified by an account admin in the Branding section of the Admin page is included in the export. 

            The default value for this parameter depends on the value that was set by the account admin.
          required: false
          schema:
            type: boolean
        - name: include-linked-processes
          in: query
          description: If specified, linked processes are included in a blueprint export.
          schema:
            type: string
            enum:
              - all
              - direct-only
        - name: include-process-diagram
          in: query
          description: If true, the process diagram is included in the export.
          required: false
          schema:
            type: boolean
            default: true
        - name: include-property-details
          in: query
          description: If true, the property details for each activity are included in the export.
          required: false
          schema:
            type: boolean
            default: true
        - name: revision-id
          in: query
          description: |-
            The version of the blueprint that you want to export. 

            You can get a list of available version IDs using the Revision API. 

            If you don't include this parameter, the latest version of the blueprint that is visible to you will be exported.
          required: false
          schema:
            type: string
        - name: use-custom-property-order
          in: query
          description: |-
            If true, the properties are arranged in the custom order that you set for them when you customized the properties. 

            If you did not set a custom order for the properties, they are arranged in the default order.
          required: false
          schema:
            type: boolean
            default: false
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/vnd.openxmlformats-officedocument.wordprocessingml.document:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /bwl/blueprints/{blueprint-id}/usage:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
        - Where Used
      summary: Exports a blueprint in a specified format. You must have access to this blueprint.
      description: Use this method to export a blueprint in a specified format.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Usages"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /bwl/blueprints/{blueprint-id}/work-summary:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
      summary: Retrieves the details of the work performed on a blueprint.
      description: Use this method to retrieve the details of the work performed on a blueprint.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/blueprintIdPath"
        - name: revision-id
          in: query
          description: |-
            The version of the blueprint whose work history that you want to retrieve. 

            You can get a list of available version IDs using the Revision API. 

            If you don't include this parameter, the latest version of the blueprint that is visible to you will be retrieved.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BlueprintWorkHistories"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/FollowedProcesses:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
      summary: Retrieves a list of processes that the user is following.
      description: Use this method to determine the processes that the user is following.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FollowedProcesses"
        401:
          $ref: "#/components/responses/401Unauthorized"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/ProcessData:
    get:
      tags:
        - Artifact Reporting
        - Blueprints
      summary: Retrieves details about a process.
      description: Use this method to retrieve process details, such as milestones, activities, and activity properties.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: processId
          in: query
          description: The ID of the process to retrieve.
          required: true
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProcessData"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/BpmnExport/{zip-file-name}:
    get:
      tags:
        - Artifact Reporting
        - Exporting and Printing
      summary: Exports IBM Blueworks Live process diagrams to BPMN 2.0 format.
      description: Use this method to export IBM Blueworks Live process diagrams to BPMN 2.0 format.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: zip-file-name
          in: path
          required: true
          description: The file name of the zip file to be downloaded
          schema:
            type: string
        - $ref: "#/components/parameters/exportToSingleFileQuery"
        - $ref: "#/components/parameters/includeDiagramInterchangeQuery"
        - name: from
          in: query
          required: false
          description: |-
            The date is in the YYYY-MM-DD format. 

            The user can use this parameter to filter out processes that were modified before this date. 

            This date is in the timezone set by the user preferences. 
            If the user timezone isn't set, the API uses the default server timezone.
          schema:
            type: string
            format: date
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/zip:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        401:
          $ref: "#/components/responses/401Unauthorized"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/ExcelExport:
    get:
      tags:
        - Artifact Reporting
        - Exporting and Printing
      summary: Retrieves an Excel representation of a space, process, or decision.
      description: Use this method to export an Excel representation of a space, process, or decision.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: excludeData
          in: query
          description: |-
            The list of data to exclude.

            If `blueprints` are excluded, then `processItems`, `processDetails`, `processPolicies`
             and `processComments` are also excluded. 

            Similarly, if `decisions` are excluded, then `decisionItems`, `decisionDetails`, 
            `decisionPolicies` and `decisionComments` are also excluded.
          required: false
          allowEmptyValue: false
          schema:
            type: array
            minimum: 1
            minItems: 1
            items:
              type: string
              enum:
                - blueprints
                - processItems
                - processDetails
                - processPolicies
                - processComments
                - decisions
                - decisionItems
                - decisionDetails
                - decisionPolicies
                - decisionComments
                - documentation
                - attachments
          explode: false
        - name: exportToSingleFile
          in: query
          required: false
          description: |-
            If this value is true and the value of includeSubspaces is true, the space and all 
            subspaces are exported to a single XLSX file. 
            A spaceID is required . This option is available only in v2 output format.
          schema:
            type: boolean
        - name: includeSubspaces
          in: query
          required: false
          description: |-
            If the value is true, subspaces are also exported. 
            Each space is exported to a separate XLSX file. 
            This parameter is only applicable when a __spaceID__ is specified.
          schema:
            type: boolean
        - name: decisionID
          in: query
          description: |-
            The ID of the decision to export. Only one of __spaceID__, 
            __processID__, and __decisionID__ must be specified.
          required: false
          schema:
            type: string
        - name: processID
          in: query
          description: |-
            The ID of the process to export. Only one of __spaceID__, 
            __processID__, and __decisionID__ must be specified.
          required: false
          schema:
            type: string
        - name: spaceID
          in: query
          description: |-
            The ID of the space to export. Only one of __spaceID__, 
            __processID__, and __decisionID__ must be specified.
          required: false
          schema:
            type: string
      responses:
        200:
          description: |-
            The request was completed successfully.

            The Excel export for the space, process, or decision that was exported. 

            The format is either a single Excel (.xlsx) file, or an archive when __includeSubspaces__ is true. 

            If both __includeSubspaces__ and __exportToSingleFile__ are true, the space and all its subspaces are 
            exported to a single file in V2.0 format.
          content:
            application/zip:
              schema:
                type: string
                format: binary
            application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/export/process/{process-id}/{revision-id}:
    get:
      tags:
        - Artifact Reporting
        - Exporting and Printing
      summary: Exports a specific revision of a process in BPMN 2.0 format.
      description: Use this method to export a specific revision of a process in BPMN 2.0 format.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: process-id
          in: path
          required: true
          description: The ID of the exported process.
          schema:
            type: string
        - name: revision-id
          in: path
          required: true
          description: The ID of the exported revision.
          schema:
            type: string
        - $ref: "#/components/parameters/exportToSingleFileQuery"
        - $ref: "#/components/parameters/includeDiagramInterchangeQuery"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/zip:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/PrintDiagram:
    get:
      tags:
        - Artifact Reporting
        - Exporting and Printing
      summary: Produces a PDF file that contains a process diagram.
      description: Use this method to produce a PDF file that contains a process diagram.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: processId
          in: query
          required: true
          description: The ID of the process to print.
          schema:
            type: string
        - name: expandSubprocesses
          in: query
          description: Whether to expand subprocesses in the printed diagram.
          schema:
            type: boolean
            default: false
        - name: includeLinkedProcesses
          in: query
          description: |-
            The type of linked processes to include in the export. 
            The values are direct for processes directly linked to the process that is being exported, 
            or all to include the indirectly linked processes as well.
          schema:
            type: boolean
            default: false
        - name: showActivityNumbering
          in: query
          description: Whether to show activity numbering in the diagram.
          schema:
            type: boolean
            default: false
        - name: showColorLegend
          in: query
          description: Whether to show the color legend in the diagram.
          schema:
            type: boolean
            default: false
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/pdf:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
                description: Header indicating the content expected
                examples:
                  - inline;
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/glossary-values:
    get:
      tags:
        - Artifact Reporting
        - Glossary
        - Search
      summary: Returns a list of glossary values that match specified criteria.
      description: Use this method to return a list of glossary values that meet specified criteria.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: name
          in: query
          description: |-
            If specified, only values with this exact name are returned. 
            If a name is specified, a category must be provided.
          required: false
          schema:
            type: string
        - name: category
          in: query
          description: |-
            If specified, only values in this category are returned. 

            A category could consist of one of the predefined categories listed in the enum below, 
            or it could be the name of a custom text properties configured on the account. 
            The category must be enabled for the account.

            Possible values are
            - participant-businessowner-expert
            - externalparticipant
            - system
            - supplier-customer
            - input-output
            - problem
            - kpi
            - goal
            - businessunit
            - tag
          required: false
          schema:
            type: string
        - name: active-state
          in: query
          description: If specified, only values in that state are returned. A category must also be provided.
          required: false
          schema:
            type: string
            enum:
              - active
              - inactive
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/GlossaryValueSummary"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/glossary-values/categories:
    get:
      tags:
        - Artifact Reporting
        - Glossary
      summary: Use this resource to retrieve a list of glossary categories, optionally including disabled categories.
      description: Returns a list of glossary categories, optionally including disabled categories.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: showAll
          in: query
          description: If this parameter is set to true, all categories, including disabled categories, are returned.
          required: false
          schema:
            type: boolean
            default: false
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/GlossaryCategory"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /bwl/glossary-values/{value-id}/usage:
    get:
      tags:
        - Artifact Reporting
        - Glossary
        - Where Used
      summary: Returns usage information for a specific glossary value.
      description: Use this method to return usage information for a specified glossary value.
      parameters:
        - $ref: "#/components/parameters/valueIdPath"
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/Usages"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/LibraryArtifact:
    get:
      tags:
        - Artifact Reporting
        - Exporting and Printing
      summary: Retrieves information about library artifacts (space, blueprint, process app, decision, and policy) in CSV format.
      description: |-
        Use this method to retrieve information about library artifacts (space, blueprint, process app, 
        decision, and policy) in CSV format. A user can specify which fields to return and optionally 
        filter on which artifacts are returned.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: returnFields
          in: query
          required: true
          description: A list of fields to return.
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - "*"
                - NAME
                - VERSION_NAME
                - ID
                - TYPE
                - HIERARCHY
                - SPACE
                - TAGS
                - IS_ACTIVE
                - IS_PUBLISHED
                - PUBLISHED_DATE
                - PUBLISHED_NAME
                - CREATED_DATE
                - CREATED_BY_USER_NAME
                - CREATED_BY_USER_ID
                - CREATED_BY_USER_EMAIL
                - LAST_MODIFIED_DATE
                - LAST_MODIFIED_BY_USER_NAME
                - LAST_MODIFIED_BY_USER_ID
                - LAST_MODIFIED_BY_USER_EMAIL
                - LAST_VIEWED_DATE
                - LAST_VIEWED_BY_USER_NAME
                - LAST_VIEWED_BY_USER_ID
                - LAST_VIEWED_BY_USER_EMAIL
                - ARCHIVED_DATE
                - ARCHIVED_BY_USER_NAME
                - ARCHIVED_BY_USER_ID
                - ARCHIVED_BY_USER_EMAIL
        - name: activeState
          in: query
          required: false
          description: Filter on the state of the artifact.
          schema:
            type: string
            enum:
              - ACTIVE
              - ARCHIVED
        - name: publishedState
          in: query
          required: false
          description: Filter on the published state of the artifact.
          schema:
            type: string
            enum:
              - PUBLISHED
              - UNPUBLISHED
        - name: spaceId
          in: query
          required: false
          description: Filter on the space ID. All child artifacts of the space are returned. (The space itself is also returned.)
          schema:
            type: string
        - name: spaceName
          in: query
          required: false
          description: Filter on the space name. All child artifacts of the space are returned. (The space itself is also returned.)
          schema:
            type: string
        - name: topSpaceOnly
          in: query
          required: false
          description: Filter on whether to return only artifacts in top-level spaces.
          schema:
            type: boolean
        - name: type
          in: query
          required: false
          description: Filter on the type of the artifact.
          schema:
            type: string
            enum:
              - SPACE
              - BLUEPRINT
              - PROCESS_APP
              - DECISION
              - POLICY
      responses:
        200:
          description: The request was completed successfully.
          content:
            text/csv:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
              description: Header indicating the content expected
              examples:
                example:
                  value: attachment; filename="name.zip"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /bwl/policies:
    get:
      tags:
        - Artifact Reporting
        - Policies
        - Search
      summary: Returns a list of policy models that meet specified criteria.
      description: Use this method to return a list of policies that meet specified criteria.
      parameters:
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: space-id
          in: query
          description: The ID of the space to search within. If not specified, the search is account-wide. If this space contains child spaces, the child spaces will also be searched. If both a space-id and space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
        - name: space-name
          in: query
          description: The name of the space to search within. If not specified, the search is account-wide. If this space contains child spaces, the child spaces will also be searched. If both a space-id and space-name are specified, the space-id takes precedence.
          required: false
          schema:
            type: string
        - name: archived-state
          in: query
          description: Filter the results based on the archived state of the artifact. If not specified, 'active' is assumed.
          required: false
          schema:
            type: string
            enum:
              - active
              - archived
        - name: name
          in: query
          description: If specified, only policy models with this exact name are returned.  Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
        - name: tag
          in: query
          description: If specified, only policy models with this exact tag are returned.  Either a name or a tag must be specified, but not both.
          required: false
          schema:
            type: string
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/LibraryArtifactFullSummary"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
    post:
      tags:
        - Artifact Authoring
        - Policies
      summary: Creates a policy.
      description: Use this method to create a policy.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
      requestBody:
        $ref: "#/components/requestBodies/CreatePolicy"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /bwl/policies/{policy-id}:
    get:
      tags:
        - Artifact Reporting
        - Policies
      summary: Returns the details of a specific policy model.
      description: Use this method to return the details of a specific policy model.
      parameters:
        - $ref: "#/components/parameters/policyIdPath"
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/PolicyDetails"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
    put:
      tags:
        - Artifact Authoring
        - Policies
      summary: Updates description or references of a specific policy model.
      description: Use this method to update description or hyperlink-references of a policy.
      parameters:
        - $ref: "#/components/parameters/policyIdPath"
        - $ref: "#/components/parameters/xOnBehalfOf"
      requestBody:
        $ref: "#/components/requestBodies/UpdatePolicy"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
        429:
          $ref: "#/components/responses/429RateLimit200ph"
  /bwl/policies/{policy-id}/usage:
    get:
      tags:
        - Artifact Reporting
        - Policies
        - Where Used
      summary: Returns information about where a specific policy model is used.
      description: Use this method to return the details of where a specific policy model is used.
      parameters:
        - $ref: "#/components/parameters/policyIdPath"
        - $ref: "#/components/parameters/xIBMAPIVersion"
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/Usages"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/Search:
    post:
      tags:
        - Artifact Reporting
        - Search
      summary: Searches for text across artifacts.
      description: Use this method to search for text across IBM Blueworks Live artifacts.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: returnFields
          in: query
          required: true
          schema:
            type: string
          description: |-
            The list of fields to return. Comma-separated list of text strings. Valid values archived-state:
            - \*
            - output
            - business_owner
            - problem
            - input
            - customer
            - supplier
            - system
            - expert
            - participant
            - external_participant
            - tag
            - cost
            - work_time
            - wait_time
            - decision_expert
            - kpis
            - business_motivation
            - decision_how_often_made
            - decision_volume
            - decision_how_often_updated
            - decision_frequency
            - decision_how_much_time
            - decision_latency
            - sources
            - decision_input
            - decision_output
            - decision_business_owner
            - exact name of any custom property. 

            Note: The activity_name, milestone_name, process_name, space_name, decision_name, sub_process_name, decision_diagram_name, decision_item_name, and event_name are always returned if they match.
        - name: searchFieldName
          in: query
          required: true
          schema:
            type: string
          description: |-
            The single field to search on. 

            Valid values are: 
            - activity_name
            - milestone_name
            - process_name
            - space_name
            - output
            - business_owner
            - problem
            - input
            - customer
            - supplier
            - system
            - expert
            - participant
            - external_participant
            - tag
            - cost
            - work_time
            - wait_time
            - decision_expert
            - kpis
            - business_motivation
            - decision_how_often_made
            - decision_volume
            - decision_how_often_updated
            - decision_frequency
            - decision_how_much_time
            - decision_latency
            - sources
            - decision_input
            - decision_output
            - decision_business_owner
            - decision_name
            - event_name
            - attached_event_name
            - sub_process_name
            - exact name of any custom property
        - name: searchValue
          in: query
          required: true
          description: |-
            The value to search for. 

            When the searchFieldName is decision_volume, decision_frequency, or decision_latency, 
            search for one of the values:
            - Low
            - Medium
            - High
          schema:
            type: string
        - name: version
          in: query
          required: true
          description: |-
            The version of the requested API.

            Possible values are
            - "20191214"
            - "20150930" (deprecated)
            - "20120130" (deprecated)
            - "20111217" (deprecated)
          schema:
            type: string
            default: "20191214"
            enum:
              - "20191214"
              - "20150930"
              - "20120130"
              - "20111217"
        - name: includeArchived
          in: query
          required: false
          description: Set the value to true to include archived data in the search.
          schema:
            type: boolean
            default: false
        - name: topSpacesOnly
          in: query
          required: false
          description: Whether only artifacts belonging to top-level spaces should be included in the output.
          schema:
            type: boolean
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchResult"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/Avatar:
    get:
      tags:
        - User Management
      summary: Retrieves an avatar corresponding to the avatarId parameter or a default avatar.
      description: Use this method to retrieve an avatar corresponding to the avatarId parameter or a default avatar, if the avatarId parameter is not found or not provided.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - name: avatarId
          in: query
          required: false
          description: |-
            The ID of the avatar to download.

            A default avatar image is returned in the following cases:
            - When the __avatarId__ is not provided
            - When an __avatarId__ is provided, but an avatar matching the ID is not found
          schema:
            type: string
        - name: location
          in: query
          required: false
          description: |-
            Indicates the location where the image is displayed in IBM Blueworks Live. 

            Each location returns an avatar in a different image size. 

            If the location value is not provided, 
            then the image is returned in the default size of 85 x 85 pixels. 

            The possible values include:
            - chat (20 x 20 pixels)
            - comments (30 x 30 pixels)
            - news (40 x 40 pixels)
            - settings (85 x 85 pixels)
          schema:
            type: string
            enum:
              - chat
              - comments
              - news
              - settings
      responses:
        200:
          description: The request was completed successfully.
          content:
            image/png:
              schema:
                type: string
                format: binary
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/ManageGroup:
    get:
      tags:
        - User Management
      summary: Retrieves a JSON array of all groups in the account and extracts details about a specific group.
      description: Use this method to retrieve a JSON array of all groups in the account or to extract details about a specific group.
      parameters:
        - name: version
          in: header
          description: |-
            The version of the requested API. Possible values are:
            - 2.0
            - 1.0 (deprecated)
          schema:
            type: string
            enum:
              - "2.0"
              - "1.0"
        - name: activeState
          in: query
          required: false
          description: The state of the user group. Values are active, archived, and all. The default value is active.
          schema:
            default: active
            type: string
            enum:
              - active
              - archived
              - all
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: "#/components/schemas/Groups"
                  - $ref: "#/components/schemas/GroupDetail"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
    put:
      tags:
        - User Management
      summary: Adds and updates a group.
      description: |-
        Use this method to add and update a group. Adding and updating a group is possible with the following methods:
        - The base URI behaves as an add method. The user who creates a new group becomes a member of the group and gets the MANAGE permission. If the new group is created with a Service ID, the new group has no members.
        - The base URI with the group name behaves as an update method.

        A list of users or groups can be added as a member of the group with either one of the methods. A parent user group cannot be added as a member of its child group.
      parameters:
        - $ref: "#/components/parameters/version1.0"
      requestBody:
        $ref: "#/components/requestBodies/GroupSummary"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GroupDetail"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/ManageGroup/{group-name}:
    delete:
      tags:
        - User Management
      summary: Archives each group individually.
      description: |-
        Use this method to archive each group individually, to remove all users except privileged users from a group, 
        or to remove specified users from a group. This group archiving method provides a single form of the DELETE 
        method, and there is no support for collections. To delete multiple groups, call this method repeatedly. The 
        user must have the MANAGE permission.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/groupNamePath"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/ManageGroup/{group-name}/users:
    delete:
      tags:
        - User Management
      summary: Remove all users, except those with Manage and Edit permissions, from the group.
      description: |-
        Use this method to remove all users except privileged users from a group, 
        or to remove specified users from a group.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/groupNamePath"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/ManageGroup/{group-name}/users/{user-ids}:
    delete:
      tags:
        - User Management
      summary: Remove specific users from the group based on their user IDs.
      description: |-
        Use this method to remove specified users from a group. For more than one user, separate the user IDs with commas.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/groupNamePath"
        - name: user-ids
          in: path
          required: true
          description: The identifier of the user or users to remove from the group. Use commas to separate multiple users
          schema:
            type: string
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/provision/user:
    get:
      tags:
        - User Management
      summary: Lists all users in the account as a JSON array.
      description: |-
        Use this method to list all account users in a JSON array.
      parameters:
        - $ref: "#/components/parameters/version1.0"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserInfo"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
    put:
      tags:
        - User Management
      summary: Provision a specific user
      description: |-
        Use this method to provision a user. When a previously archived user is added, the account of that user is reactivated.
      parameters:
        - $ref: "#/components/parameters/version1.0"
      requestBody:
        $ref: "#/components/requestBodies/UserInfoRequest"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserInfo"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/provision/user/{user-id}:
    get:
      tags:
        - User Management
      summary: Retrieve details about a specific user account.
      description: |-
        Use this method to retrieve details about a specific user account.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/userIdPath"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserInfo"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
    put:
      tags:
        - User Management
      summary: Add an exisiting user to multiple groups.
      description: |-
        Use this method to to update the user's membership in one or multiple groups. If the username is non-existent, then a user is created with default attributes.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/userIdPath"
      requestBody:
        $ref: "#/components/requestBodies/UserInfoRequest"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserInfo"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
    delete:
      tags:
        - User Management
      summary: Archive an user.
      description: |-
        Use this method to archive each user individually
        The user archiving service provides a single form of the DELETE method, so there is no support for collections. 
        This method can be called repeatedly to delete multiple users.
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/userIdPath"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/provision/user/{user-id}/groups:
    delete:
      tags:
        - User Management
      summary: Remove a user from all groups.
      description: Use this method to remove a user from all groups
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/userIdPath"
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/provision/user/{user-id}/groups/{group-ids}:
    delete:
      tags:
        - User Management
      summary: Remove a user from all groups.
      description: Use this method to remove a user from all groups
      parameters:
        - $ref: "#/components/parameters/version1.0"
        - $ref: "#/components/parameters/userIdPath"
        - name: group-ids
          in: path
          required: true
          description: The identifier of the group or groups. Use commas to separate multiple groups
          schema:
            type: string
      responses:
        200:
          $ref: "#/components/responses/200Successfully"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/UserList:
    get:
      tags:
        - User Management
      summary: Returns a list of users in the authenticated user account.
      description: Use this method to return a list of users in the authenticated user account in either JSON or CSV format.
      parameters:
        - name: format
          in: query
          required: false
          description: The format to return
          schema:
            type: string
            enum:
              - csv
              - json
            default: json
        - name: version
          in: query
          required: false
          description: The version of the requested API.
          schema:
            type: string
            enum:
              - "20110917"
              - "20091212"
            default: "20091212"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserList"
            text/csv:
              schema:
                type: string
                examples:
                  - |-
                    "License Type","Full Name","Email Address","Business Unit","Administrator","Last Login / Invite / Archive Date (Eastern Standard Time)","Archived","Invited","Licensed","Locked"
                    "Editor", "username1", "user1_email@website.com", "Department 1", Yes, "2011/07/14 02:39:10", No, No, Yes, No
                    "Community", "username2", "user2_email@website.com", "", No, "", No, No, Yes, No
                    "Contributor", "username3", "user3_email@website.com", "", No, "", No, No, Yes, No
                    "Viewer", "username4", "user4_email@website.com", "", No, "2011/07/14 02:25:43", No, No, Yes, No
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /bwl/users/{user-id}/history:
    get:
      tags:
        - User Management
      summary: Returns the account settings history of a specific user.
      description: Use this method to retrieve and export the events from the user's account history.
      parameters:
        - $ref: "#/components/parameters/userIdPath"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserAccountHistory"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/AppDetail:
    get:
      tags:
        - Work Management
      summary: Retrieves information about a process app definition.
      description: Use this method to retrieve information about a process app definition.
      parameters:
        - name: appId
          in: query
          required: true
          description: The ID of the requested process app.
          schema:
            type: string
            enum:
              - csv
              - json
            default: json
        - $ref: "#/components/parameters/version20110917"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AppDetailResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/AppList:
    get:
      tags:
        - Work Management
      summary: Retrieves a list of process apps that the user can start instances of.
      description: Use this method to retrieve a list of process apps that the user can start instances of.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AppListResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/LaunchInstance:
    post:
      tags:
        - Work Management
      summary: Starts a new work instance from an application definition.
      description: Use this method to start a new work instance from an application definition.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: instance
          in: query
          required: true
          description: The definition for the instance to create.
          schema:
            type: object
            required:
              - app
            properties:
              app:
                type: object
                required:
                  - attachments
                  - id
                  - subject
                  - tasks
                properties:
                  attachments:
                    type: array
                    description: |-
                      The array of attachments to associate with this instance. 
                      These attachments can be either originally attached to the application definition, 
                      or they might be newly created just for this instance. 
                      Each attachment is identified by its ID.
                      Provide an empty array if you are not attaching files.
                    items:
                      properties:
                        id:
                          type: string
                          description: The ID of the attachment.
                  id:
                    type: string
                    description: The ID of the application.
                  subject:
                    type: string
                    description: The subject for the new work instance.
                  tasks:
                    type: array
                    description: The array of tasks associated with the instance.
                    items:
                      $ref: "#/components/schemas/TaskSummary"
                  details:
                    type: string
                    description: The details for the new work instance.
                  mailOnCompletion:
                    type: boolean
                    description: The notification email setting.
                  timeZoneId:
                    type: string
                    description: The timezone to start the instance in. If the timezone is not provided, then the value from the user's current preferences is used. If user's timezone preference is also not set, then the server default is used.
      responses:
        200:
          description: The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LaunchInstanceResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/TaskList:
    get:
      tags:
        - Work Management
      summary: Gets a list of open tasks assigned to the current user and a list of the user's completed tasks.
      description: Use this method to get a list of open tasks assigned to the current user and a list of the user's completed tasks.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: type
          in: query
          required: true
          description: The type of list to return.
          schema:
            type: string
            enum:
              - assigned
              - completed
        - name: limit
          in: query
          description: The maximum number of tasks to return.
          schema:
            type: integer
            default: 100
        - name: startFrom
          in: query
          description: If this parameter is provided, then the returned list starts with the task at this index in the list (zero based). Use this parameter if the number of available tasks is higher than the number of the returned tasks in an earlier call limit.
          schema:
            type: integer
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TaskListResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/TaskListCount:
    get:
      tags:
        - Work Management
      summary: Gets the number of tasks that are assigned to or completed by the user.
      description: Use this method to get the number of tasks assigned to or completed by the user.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: type
          in: query
          required: true
          description: The type of list to return.
          schema:
            type: string
            enum:
              - assigned
              - completed
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    description: The total number of tasks of a specific type that are owned by the user.
                    type: integer
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/UserListForWork:
    get:
      tags:
        - Work Management
      summary: Returns a list of the users to whom the tasks can be assigned.
      description: Use this method to return a list of the users to whom the tasks can be assigned.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserListForWorkResponse"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /scr/api/WorkAction:
    post:
      tags:
        - Work Management
      summary: Performs an action on a work item.
      description: Use this method to perform an action on a work item.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: action
          in: query
          description: The information for the action to perform
          required: true
          schema:
            type: object
            properties:
              subject:
                description: The subject for a new work instance. Required by the CHANGE_SUBJECT action.
                type: string
              runtimeVersion:
                description: The array that identifies the version of the work instance. Treat this value as an opaque data item.
                type: array
                items:
                  type: string
              workId:
                description: The ID of the work item to perform the action on.
                type: string
              appId:
                description: The ID of the application this work relates to.
                type: string
              timeZoneId:
                description: The timezone to start the instance in.
                type: string
              type:
                description: The type of action to perform.
                type: string
                enum:
                  - COMPLETE
                  - APPROVE
                  - REJECT
                  - ADD_TASK
                  - REASSIGN
                  - CHANGE_SUBJECT
                  - CANCEL_INSTANCE
                  - REMOVE_ATTACHMENT
              attachmentId:
                description: The ID of the attachment to remove from the instance. Required by the REMOVE_ATTACHMENT action.
                type: string
              task:
                description: The subject for a new work instance.
                type: object
                properties:
                  id:
                    description: Required by the ADD_TASK, REASSIGN, APPROVE, COMPLETE, and REJECT actions. The ID of the task that the action is performed on. If an ADD_TASK action is performed, then this task ID is completed and a new one is created.
                    type: string
                  assignedTo:
                    description: Required by the REASSIGN and ADD_TASK actions. The ID of the user to whom this task is assigned.
                    type: string
                  name:
                    description: Required by the ADD_TASK action. The name of the task.
                    type: string
                  approvalStep:
                    description: Optional for the ADD_TASK action, and only needed for work items of workflow type. Indicates whether the task is an approval step. It is assumed to have a value of false if the parameter is not found.
                    type: boolean
                  dueDateExpression:
                    description: Optional for the ADD_TASK action. Indicates the due date for this task, which must be in the YYYY/MM/DD format.
                    type: string
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LaunchInstanceResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/WorkComment:
    post:
      tags:
        - Work Management
      summary: Adds and removes comments in a work instance.
      description: Use this method to add and remove comments in a work instance.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: action
          in: query
          description: The information for the action to perform
          required: true
          schema:
            type: string
            enum:
              - add
              - remove
        - name: comment
          in: query
          description: The text for the added comment. The length limit for the text is 400 characters.
          schema:
            type: string
        - name: commentId
          in: query
          description: The ID of the removed comment.
          schema:
            type: string
        - name: workId
          in: query
          description: The ID of the work item that the comment is added to.
          schema:
            type: string
        - name: parentCommentId
          in: query
          description: Indicates whether the comment is a reply to another comment. The `parentCommentId` must match the comment in the provided `workId` and must also be a top-level comment (replies to replies are not allowed).
          schema:
            type: string
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WorkCommentResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        403:
          $ref: "#/components/responses/403Forbidden"
  /scr/api/WorkDetail:
    get:
      tags:
        - Work Management
      summary: Retrieves information about a particular piece of work.
      description: Use this method to retrieve information about a particular piece of work.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: workId
          in: query
          description: The ID of the piece of work you want to retrieve.
          schema:
            type: string
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LaunchInstanceResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
        404:
          $ref: "#/components/responses/404ParametersNotFound"
  /scr/api/WorkList:
    get:
      tags:
        - Work Management
      summary: Retrieves a list of open or closed work items that were started by the user.
      description: Use this method to retrieve a list of open or closed work items that were started by the user.
      parameters:
        - $ref: "#/components/parameters/xOnBehalfOf"
        - $ref: "#/components/parameters/version20110917"
        - name: type
          in: query
          required: true
          description: The type of list to return
          schema:
            type: string
            enum:
              - "open"
              - "closed"
        - name: limit
          in: query
          description: The maximum number of tasks to return.
          schema:
            type: integer
            default: 100
        - name: startFrom
          in: query
          description: If this parameter is provided, then the returned list starts with the task at this index in the list (zero based). Use this parameter if the number of available tasks is higher than the number of the returned tasks in an earlier call limit.
          schema:
            type: integer
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WorkListResponse"
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
  /oauth/token:
    post:
      tags:
        - Authentication
      summary: Generate an access token.
      description: Use this method to request an access token with the OAuth 2 client credentials (Client ID and Secret).
      parameters:
        - name: grant_type
          in: query
          required: true
          schema:
            type: string
            enum:
              - "client_credentials"
        - name: consent_type
          in: query
          description: Required if using Client ID and Clietn Secret belonging to a User Service ID.
          schema:
            type: string
            enum:
              - "user_consent"
        - name: client_id
          in: query
          required: true
          schema:
            type: string
        - name: client_secret
          in: query
          required: true
          schema:
            type: string
            format: password
      responses:
        200:
          description: |-
            The request was completed successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  access_token:
                    type: string
                  token_type:
                    type: string
                    default: "Bearer"
                  expires_in:
                    type: integer
                  scope:
                    type: string
        400:
          $ref: "#/components/responses/400InvalidValues"
        401:
          $ref: "#/components/responses/401Unauthorized"
components:
  schemas:
    WorkListResponse:
      type: object
      properties:
        version:
          type: string
          enum:
            - "20110917"
          default: "20110917"
        more:
          type: boolean
        type:
          type: string
          enum:
            - open
            - closed
        work:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              id:
                type: string
              status:
                type: string
                enum:
                  - Active
                  - Completed
                  - Cancelled
                  - Overdue
              remainingTasks:
                type: integer
              dueDate:
                type: string
        app:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              type:
                type: string
                enum:
                  - checklist
                  - workflow
    WorkCommentResponse:
      type: object
      properties:
        version:
          type: string
          enum:
            - "20110917"
          default: "20110917"
        action:
          type: string
          enum:
            - add
            - remove
        commentId:
          type: string
    UserListForWorkResponse:
      type: object
      properties:
        users:
          type: array
          items:
            properties:
              id:
                type: string
                description: The ID of the user.
              avatarId:
                type: string
                description: The avatar ID of the user.
              name:
                type: string
                description: The full name of the user.
              license:
                type: string
                description: license value
                enum:
                  - Editor
                  - Contributor
    TaskListResponse:
      type: object
      properties:
        version:
          description: The version of the API used to create the response.
          type: string
        more:
          type: boolean
          description: Are there are more tasks
        type:
          type: string
          description: The type of tasks in the list.
          enum:
            - assigned
            - completed
        tasks:
          description: The array of tasks.
          type: array
          items:
            properties:
              name:
                description: The name of the task.
                type: string
              id:
                description: The ID of the task.
                type: string
              workId:
                description: The ID of the associated work.
                type: string
              dueDate:
                description: due date of the task
                type: string
        work:
          description: The array of work items. The work items are in no particular order.
          type: array
          items:
            properties:
              name:
                type: string
                description: The name of the task.
              id:
                type: string
    LaunchInstanceResponse:
      type: object
      properties:
        version:
          description: The version of the API used to create the response.
          type: string
          default: "20110917"
          enum:
            - "20110917"
        work:
          $ref: "#/components/schemas/WorkInfo"
        app:
          $ref: "#/components/schemas/AppDetails"
        users:
          type: array
          items:
            properties:
              name:
                type: string
              id:
                type: string
              avatarId:
                type: string
    WorkInfo:
      description: The work object.
      properties:
        runtimeVersion:
          description: The array that identifies the version of the work instance. Treat this value as an opaque data item.
          type: array
          items:
            type: string
        name:
          description: The name to display for the work instance.
          type: string
        id:
          description: The ID of the work instance.
          type: string
        subject:
          description: The subject entered by the user who created the instance.
          type: string
        details:
          description: The details entered by the user who created the instance.
          type: string
        status:
          description: The status of work
          type: string
          enum:
            - Active
            - Completed
            - Cancelled
            - Overdue
        startedBy:
          description: The ID of the user who created the instance.
          type: string
        startedAt:
          description: The date and time when the instance was started.
          type: string
        completedBy:
          description: The ID of the user who completed or canceled the instance.
          type: string
        completedAt:
          description: The date and time when the instance was completed or canceled.
          type: string
        appId:
          description: The ID of application from which the instance was started.
          type: string
        canManageWork:
          description: Indicates whether the user has permissions to cancel work, change subject, or reassign tasks.
          type: string
        tasks:
          description: The array of tasks associated with the instance.
          type: array
          items:
            $ref: "#/components/schemas/TaskInfoSummary"
        attachments:
          description: The array of attachments associated with the instance.
          type: array
          items:
            $ref: "#/components/schemas/AttachmentInfoSummary"
        comments:
          description: The array of comments associated with the instance.
          type: array
          items:
            $ref: "#/components/schemas/CommentSummary"
    CommentSummary:
      description: Comment details
      type: object
      properties:
        from:
          description: The ID of the user who created the comment.
          type: string
        id:
          description: The ID of the comment.
          type: string
        commentDate:
          description: The date when the comment was created.
          type: string
        text:
          description: The text of the comment.
          type: string
        canDelete:
          description: Indicates whether the user can delete the comment.
          type: boolean
        replies:
          description: The list of replies to the parent comment.
          type: array
          items:
            type: string
    AttachmentInfoSummary:
      description: Attachment details
      type: object
      properties:
        name:
          description: The name of the attachment.
          type: string
        id:
          description: The ID of the attachment.
          type: string
        uploadedBy:
          description: The ID of the user who uploaded the attachment.
          type: string
        uploadedOn:
          description: The date and time when the attachment was uploaded. The value is expressed in milliseconds since epoch, that is 1 January 1970 at midnight Coordinated Universal Time (UTC).
          type: integer
        size:
          description: The size of the attachment in bytes.
          type: integer
        type:
          description: |-
            The type of attachment

            1	- Generic document. Used if the file doesn't fall under one of the other values.
            2 -	Microsoft Excel file
            3 -	Image
            4 -	PDF document
            5 -	Microsoft PowerPoint document
            6 -	Microsoft Project document
            7 -	Microsoft Visio document
            8 -	Microsoft Word document
          type: integer
        canDelete:
          description: Indicates whether the user has permissions to delete the attachment.
          type: boolean
        deletedOn:
          description: The date and time when the attachment was deleted.
          type: string
        deletedBy:
          description: The name of the user who deleted the attachment.
          type: string
    TaskInfoSummary:
      description: Task Summary
      properties:
        name:
          description: The name of the task.
          type: string
        id:
          description: The ID of the task. You must provide the ID for a task that is a part of the application definition. You don't need to provide the ID for a new task.
          type: string
        assignedTo:
          description: The ID of the user to whom the task is assigned.
          type: string
        actioner:
          description: The ID of the user who is not the task owner and who created the last change in the task status.
          type: string
        dueDate:
          description: The date when the task is due.
          type: string
        status:
          description: Task Status
          type: string
          enum:
            - Pending
            - NotStarted
            - InProgress
            - Completed
            - Reassigned
        reassignmentReason:
          description: This property is present only if the status is `Reassigned`.
          type: string
          enum:
            - TaskReassigned
            - OwnerDowngraded
            - OwnerArchived
        approvalStep:
          type: boolean
        isApproved:
          description: If the task is an approval step
          type: boolean
    TaskSummary:
      description: Task summary
      type: object
      required:
        - assignedTo
        - name
      properties:
        name:
          description: The name of the task.
          type: string
        id:
          description: The ID of the task. You must provide the ID for a task that is a part of the application definition. You don't need to provide the ID for a new task.
          type: string
        assignedTo:
          description: The ID of the user to whom the task is assigned.
          type: string
        approvalStep:
          description: Set the value to true for an approval step, and omit the parameter or set the value to false for a step that is not an approval.
          type: boolean
        dueDateExpression:
          description: The expression that specifies the due date must be in the following format- yyyy/mm/dd.
          type: string
    AppListResponse:
      type: object
      properties:
        version:
          description: The version of the API used to create the response.
          type: string
          enum:
            - "20110917"
          default: "20110917"
        more:
          type: boolean
          description: Are there are more process app definition instances on the server
        apps:
          type: array
          items:
            $ref: "#/components/schemas/AppInfoSummary"
        favorites:
          type: array
          description: The array of apps that the user selected as favorites
          items:
            $ref: "#/components/schemas/FavoritesObject"
    FavoritesObject:
      type: object
      properties:
        id:
          type: string
          description: The ID of the favorite process app.
    AppDetailResponse:
      type: object
      properties:
        version:
          type: string
          enum:
            - "20110917"
          default: "20110917"
        app:
          $ref: "#/components/schemas/AppInfo"
        users:
          type: array
          items:
            properties:
              name:
                type: string
              id:
                type: string
              avatarId:
                type: string
    AppDetails:
      type: object
      properties:
        name:
          type: string
          description: The name of the process app that the work instance was started from.
        id:
          type: string
          description: The ID of the process app that the work instance was started from.
        subjectTitle:
          type: string
          description: The title for edit area where the user entered a subject for the instance.
        detailsTitle:
          type: string
          description: The title for edit area where the user entered a details for the instance.
        type:
          type: string
          description: The app type.
          enum:
            - workflow
            - checklist.
    AppInfoSummary:
      type: object
      properties:
        name:
          type: string
          description: The name of the process app that the work instance was started from.
        id:
          type: string
          description: The ID of the process app that the work instance was started from.
        processId:
          type: string
          description: The ID of the process that is related to this app. Use this property to match news feed entries to an app.
        type:
          type: string
          description: The app type.
          enum:
            - workflow
            - checklist
        new:
          type: boolean
          description: It indicates a process app that the user did not see before.
    AppInfo:
      type: object
      properties:
        name:
          type: string
          description: The name of the process app.
        id:
          type: string
          description: The ID of the process app.
        processId:
          type: string
          description: The ID of the process app. Use this process ID together with the attachment ID to retrieve files attached to this app.
        instructions:
          type: string
          description: The instructions for creating an instance of a process app. Text length limit is 200 characters.
          default: ""
        subjectTitle:
          type: string
          description: The title for the edit area in which the user entered a subject for the instance.
          default: ""
        detailsTitle:
          type: string
          description: The title for the edit area where the user entered details for the instance.
          default: ""
        type:
          type: string
          description: The app type
          enum:
            - workflow
            - checklist
        mailOnCompletion:
          type: boolean
          description: Email is sent to the user who created the instance.
        tasks:
          description: The array of tasks associated with the instance.
          type: array
          items:
            $ref: "#/components/schemas/TaskDetail"
    TaskDetail:
      description: Task details
      type: object
      properties:
        name:
          description: The name of the task.
          type: string
        id:
          description: The ID of the task.
          type: string
        assignedTo:
          description: The ID of the user to whom the task is assigned.
          type: string
        approvalStep:
          description: Indicates whether this task is an approval step. This is only valid for instances of `workflow` type.
          type: string
        attachments:
          description: The array of attachments associated with this instance or the process app that it was started from.
          type: array
          items:
            $ref: "#/components/schemas/AttachmentDetail"
    AttachmentDetail:
      description: Attachment details
      type: object
      properties:
        name:
          description: The name of the attachment.
          type: string
        id:
          description: The ID of the attachment.
          type: string
        uploadedBy:
          description: The ID of the user who uploaded the attachment.
          type: string
        uploadedOn:
          description: The date and time when the attachment was uploaded. The value is expressed in milliseconds since epoch, that is 1 January 1970 at midnight Coordinated Universal Time (UTC).
          type: integer
        size:
          description: The size of the attachment in bytes.
          type: integer
        deletedOn:
          description: The date and time when the attachment was deleted. The value is expressed in milliseconds since epoch, that is, 1 January 1970 at midnight Coordinated Universal Time (UTC). This field is present only if the file was deleted from the account through the admin pages.
          type: integer
        deletedBy:
          description: The name of the user who deleted the attachment.
          type: string
    UserAccountHistory:
      description: Contains account settings history for a user.
      type: array
      items:
        $ref: "#/components/schemas/UserHistoryRecord"
    UserHistoryRecord:
      description: Contains a change record in the account settings history for a user.
      properties:
        date:
          description: The date when this change was made.
          type: string
        target-user:
          description: The email of the target user for this change.
          type: string
        made-by-email:
          description: The email of the user who made this change.
          type: string
        made-by-full-name:
          description: The full name of the user who made this change.
          type: string
        change-type:
          description: The change type of this record.
          type: string
        details:
          description: The details of this change.
          type: string
    Group:
      properties:
        name:
          description: The name of the group.
          type: string
        description:
          description: The description of the group.
          type: string
        id:
          description: The ID of the group or user.
          type: string
        activeState:
          description: The state of the group.
          type: string
          enum:
            - active
            - archived
    Groups:
      description: List all groups in the account
      type: array
      items:
        $ref: "#/components/schemas/Group"
    UserDetail:
      type: object
      properties:
        name:
          description: The name of the user.
          type: string
        email:
          description: The email of the user.
          type: string
        id:
          description: The ID of the user.
          type: string
    UserNameList:
      type: object
      properties:
        users:
          description: List of user names.
          type: array
          items:
            type: string
          examples:
            - ["admin@us.ibm.com", "user_id@us.ibm.com", "test@us.ibm.com"]
    UserList:
      type: object
      properties:
        version:
          type: string
        users:
          type: array
          items:
            allOf:
              - $ref: "#/components/schemas/UserInfo"
    UserInfo:
      type: object
      properties:
        username:
          description: The email address of the user.
          type: string
        fullname:
          description: The full name of the user.
          type: string
        license:
          description: The license level of the provisioned user.
          type: string
          default: EDITOR
        admin:
          description: Is the user is an administrator.
          type: boolean
        active:
          description: Is the user is an active.
          type: boolean
        businessunit:
          description: The department, division, workgroup, or functional area that the user works in.
          $ref: "#/components/schemas/ItemIdentity"
        usergroups:
          description: The list of groups that the user is a part of. This property is returned only if the user is a part of at least one group.
          type: array
          items:
            type: object
            properties:
              groupname:
                description: The name of a group that the user is a part of.
                type: string
    GroupDetail:
      description: Get the details of a specific group
      properties:
        groups:
          $ref: "#/components/schemas/Groups"
        name:
          description: The name of the group.
          type: string
        description:
          description: The description of the group.
          type: string
        id:
          description: The ID of the group.
          type: string
        users:
          type: array
          description: The list of users who are members of the group.
          items:
            allOf:
              - $ref: "#/components/schemas/UserDetail"
    ItemCommonDetails:
      allOf:
        - $ref: "#/components/schemas/ItemIdentity"
      properties:
        businessOwners:
          description: An array that contains the IDs of any business owners who are linked to the activity or decision.
          $ref: "#/components/schemas/ItemIdentityArray"
        experts:
          description: An array that contains the IDs of any experts who are linked to the activity or decision.
          $ref: "#/components/schemas/ItemIdentityArray"
        inputs:
          description: An array that contains the IDs of any inputs that are linked to the activity or decision.
          $ref: "#/components/schemas/ItemIdentityArray"
        outputs:
          description: An array that contains the IDs of any outputs that are linked to the activity or decision.
          $ref: "#/components/schemas/ItemIdentityArray"
    ItemDecisionDetails:
      allOf:
        - $ref: "#/components/schemas/ItemCommonDetails"
      properties:
        kpis:
          description: An array that contains the IDs of any key performance indicators that are linked to the decision.
          $ref: "#/components/schemas/ItemIdentityArray"
        business_motivation:
          description: The value of the business motivation property that is linked to the decision.
          properties:
            name:
              type: string
        decision_how_often_made:
          description: The value of how often the decision is made that is linked to the decision.
          properties:
            name:
              type: string
        decision_volume:
          description: The value of the decision volume property that is linked to the decision.
          properties:
            name:
              type: string
        decision_how_often_updated:
          description: The value of how often the decision is updated that is linked to the decision.
          properties:
            name:
              type: string
        decision_frequency:
          description: The value of the decision frequency property that is linked to the decision.
          properties:
            name:
              type: string
        decision_how_much_time:
          description: The value of how much time the decision takes that is linked to the decision.
          properties:
            name:
              type: string
        decision_latency:
          description: The value of the decision latency property that is linked to the decision.
          properties:
            name:
              type: string
        sources:
          description: The value of the sources property that is linked to the decision.
          properties:
            name:
              type: string
    ItemProcessDetails:
      allOf:
        - $ref: "#/components/schemas/ItemCommonDetails"
      properties:
        cost:
          $ref: "#/components/schemas/ItemNameArray"
        cycleTime:
          $ref: "#/components/schemas/ItemNameArray"
        customers:
          description: An array that contains the IDs of any customers who are associated with the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
        problems:
          description: An array that contains the IDs of any problems that are linked to the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
        participants:
          description: An array that contains the IDs of any participants that are linked to the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
        externalParticipant:
          description: An array that contains the IDs of any external participant that are linked to the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
        suppliers:
          description: An array that contains the IDs of any suppliers that are linked to the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
        systems:
          description: An array that contains the IDs of any systems that are linked to the activity.
          $ref: "#/components/schemas/ItemIdentityArray"
    SearchResult:
      properties:
        spaces:
          type: array
          description: An array that defines a space.
          items:
            allOf:
              - $ref: "#/components/schemas/ItemIdentity"
            properties:
              processes:
                type: array
                description: An array that defines a process.
                items:
                  allOf:
                    - $ref: "#/components/schemas/ItemProcessDetails"
                  properties:
                    milestones:
                      type: array
                      description: An array that defines a milestone.
                      items:
                        allOf:
                          - $ref: "#/components/schemas/ItemProcessDetails"
                        properties:
                          activities:
                            type: array
                            description: An array that defines an activity.
                            items:
                              allOf:
                                - $ref: "#/components/schemas/ItemProcessDetails"
                              properties:
                                linkedItems:
                                  type: array
                                  description: |-
                                    An array that contains the values of linkedActivityId and linkedProcessId for a message event activity. 
                                    This array is returned only in version 20191214.
                                  items:
                                    properties:
                                      linkedActivityId:
                                        description: |-
                                          The activity ID of the other activity that the activity is linked to. 
                                          If this ID isn't present, then the activity is not linked to an activity. 
                                          The IDs of all processes are returned in version 20191214 in the linkedItems property.
                                        type: string
                                      linkedProcessId:
                                        type: string
                                        description: |-
                                          If the `linkedActivityId` is present, the `linkedProcessId` property is the ID of the process that 
                                          the linked activity belongs to. Otherwise, this property is the process ID of the process that 
                                          the activity links to. 

                                          This ID is returned in versions 20111217 (deprecated) and 20120130 
                                          (deprecated) of the API.

                                          If this ID isn't present, then the activity doesn't link to a process. 

                                          If the activity is linked to more than one process, only the ID of the first process is returned. 
                                          The IDs of all processes are returned in version 20191214 in the linkedItems property.
                                      linkedProcessIds:
                                        type: array
                                        description: |-
                                          A list of process IDs for the processes that the activity links to. 

                                          This list is returned in versions 20150930 (deprecated) and 20191214 of the API. 

                                          If this list isn't present, then the activity doesn't link to any processes.
              decisions:
                type: array
                description: An array that defines a decision.
                items:
                  allOf:
                    - $ref: "#/components/schemas/ItemDecisionDetails"
                  properties:
                    sub-decisions:
                      type: array
                      description: An array that defines a sub-decision.
                      items:
                        allOf:
                          - $ref: "#/components/schemas/ItemDecisionDetails"
    PolicyDetails:
      allOf:
        - $ref: "#/components/schemas/LibraryArtifactFullSummary"
      properties:
        description:
          description: The policy description.
          type: string
        file-references:
          type: array
          items:
            $ref: "#/components/schemas/ItemIdentity"
        hyperlink-references:
          type: array
          items:
            $ref: "#/components/schemas/HyperlinkDetails"
    HyperlinkDetails:
      description: Contains information about a hyperlink.
      properties:
        name:
          type: string
        url:
          type: string
    GlossaryCategory:
      description: A glossary value category.
      properties:
        name:
          description: The name of the glossary category.
          type: string
          examples:
            - participant-businessowner-expert
        active-state:
          description: Whether the glossary category is active or inactive.
          type: string
          enum:
            - active
            - inactive
        category-type:
          description: Whether the glossary category is predefined or custom.
          type: string
          enum:
            - predefined
            - custom
    ValueObject:
      description: Value ID object
      properties:
        val:
          type: string
          description: The ID of another item.
          examples:
            - "5f500e57b6202"
    ValueObjectArray:
      description: List of Value IDs
      type: array
      items:
        $ref: "#/components/schemas/ValueObject"
    ProcessData:
      description: Process Data
      properties:
        processId:
          type: string
          description: The ID of the process. The items map contains an entry for this ID.
          examples:
            - "100005"
        accessControl:
          type: object
          description: The access properties that the requesting user has for the process.
          properties:
            isAuthor:
              type: string
              description: This boolean access control property indicates whether the user who makes the request has author access to the process.
              format: boolean
              examples:
                - "true"
        items:
          type: object
          description: The items map that has one entry for each item. The key is the item ID, and the value is the object with the item's properties.
          additionalProperties:
            type: object
            properties:
              positionFlowsRight:
                type: string
                format: boolean
                examples:
                  - "false"
              process:
                type: string
                description: The property of a comment with the ID of the process that the comment is associated with.
              project:
                type: string
                description: The property of the PROCESS item with the ID of the PROJECT item that represents the project that the process is in.
              deleted:
                type: string
                description: The indication of whether the data for the file was deleted.
                format: boolean
                examples:
                  - "false"
              participants:
                type: string
                description: The value is the ID of a single participant ACTOR item associated with an activity.
                examples:
                  - 3d9200f4
              majorType:
                type: string
                description: The type of activity that the item represents. This property is present only for ACTIVITY items.
                examples:
                  - "activity"
                enum:
                  - activity
                  - endEvent
                  - gateway
                  - intermediateEvent
                  - intermediateEventAttached
                  - linkedprocess
                  - milestone
                  - startEvent
                  - subprocess
              textAnnotation:
                type: string
                examples:
                  - "5d1f04"
              uiTaskIncludeAttach:
                type: string
                format: boolean
                examples:
                  - "false"
              uiTaskIncludeDoc:
                type: string
                format: boolean
                examples:
                  - "false"
              name:
                type: string
                description: |-
                  The name of the item.
                  - For a comment item, the name is the actual comment text.
                  - For a process item, the name of the process is in the name of the root activity in the `rootActivityId` property.
                examples:
                  - "Generate Conterct Document"
              itemType:
                type: string
                description: |-
                  The type of item

                  | Item type value | Description | Item type properties |
                  | --------------- | ----------- | -------------------- |
                  | ACTIVITY | Any item, including milestones, is an activity on the map or the diagram. | The majorType property distinguishes between different subtypes of an activity. |
                  | ACTOR | A person or a role. Actors are used for participants, business owners, and experts. | itemType and Name |
                  | COMMENT | A comment | The name property of the comment is the comment text. | 
                  | FILEITEM | A file | No properties. Information about the file is in the files map. Look at the documentation for the fileItems property. | 
                  | INPUTOUTPUT | Something that can be used as an input or an output. | itemType and Name |
                  | PROBLEM | A problem | itemType and Name |
                  | PROCESS | A process | itemType and Name |
                  | PROJECT | A project | itemType and Name |
                  | SYSTEM | A system | itemType and Name |
                  | SUPPLIERCUSTOMER | An item that can be used as a supplier or a customer | itemType and Name |
                  | TEXT_ANNOTATION | A text annotation | itemType, Name, associationFrom, associationTo |
                examples:
                  - "ACTIVITY"
                enum:
                  - "ACTIVITY"
                  - "ACTOR"
                  - "COMMENT"
                  - "FILEITEM"
                  - "INPUTOUTPUT"
                  - "PROBLEM"
                  - "PROCESS"
                  - "PROJECT"
                  - "SYSTEM"
                  - "SUPPLIERCUSTOMER"
                  - "TEXT_ANNOTATION"
              association:
                type: string
                description: The association between the activity and the annotation for a linked text annotation.
                examples:
                  - "Activity text Annotation"
              associationFrom:
                type: string
                description: The ID of the activity that has the text annotation.
                examples:
                  - "5d00c9"
              associationTo:
                type: string
                description: The association between the activity and the annotation for a linked text annotation.
                examples:
                  - "5d1f04"
              activities:
                description: The array that contains IDs of sub activities of an activity. For the root activity, sub activities are milestones.
                $ref: "#/components/schemas/ValueObjectArray"
              attachedEvents:
                description: The array that contains IDs of attached events of an activity.
                $ref: "#/components/schemas/ValueObjectArray"
              files:
                description: The files map. The key is the ID of the file, and the value is the object with the file's properties.
                additionalProperties:
                  type: object
                  properties:
                    size:
                      type: string
                      description: The property of an item in the files array holding the size of the file in bytes.
                      format: integer
                      examples:
                        - "3.0"
                    deleted:
                      type: string
                      description: The indication of whether the data for the file was deleted.
                      format: boolean
                      examples:
                        - false
                    type:
                      type: string
                      description: |-
                        The property of the item in the files array that defines the type of the file.
                        - 1	- Generic document. Used if the file doesn't fall under one of the other values.
                        - 2	- Microsoft Excel file
                        - 3	- Image
                        - 4	- PDF document
                        - 5	- Microsoft PowerPoint document
                        - 6	- Microsoft Project document
                        - 7	- Microsoft Visio document
                        - 8	- Microsoft Word document
                        - 9	- Text
                      format: integer
                      examples:
                        - "9"
                      enum:
                        - "1"
                        - "2"
                        - "3"
                        - "4"
                        - "5"
                        - "6"
                        - "7"
                        - "8"
                        - "9"
                    name:
                      type: string
                      description: The file name
                      examples:
                        - "bar.txt"
              businessOwners:
                description: |-
                  The array that contains IDs of any business owners who are linked to the activity. 
                  Each entry in the array is an object with a single val property that holds 
                  ID of the business owner ACTOR item.
                $ref: "#/components/schemas/ValueObjectArray"
              experts:
                description: |-
                  The array with the IDs of any experts that are linked to the activity. 
                  Each entry in the array is an object with a single val property that 
                  holds the ID of the expert ACTOR item.
                $ref: "#/components/schemas/ValueObjectArray"
              outputs:
                description: |-
                  The array with the IDs of any outputs linked to the activity. 
                  Each entry in the array is an object with a single val property that holds the ID of the INPUTOUTPUT item.
                $ref: "#/components/schemas/ValueObjectArray"
              customers:
                description: |-
                  The array that contains the IDs of customers associated with the activity. 
                  Each entry in the array is an object with a single val property that holds 
                  the ID of the SUPPLIERCUSTOMER item.
                $ref: "#/components/schemas/ValueObjectArray"
              systems:
                description: |-
                  The array of links to SYSTEM items. Each entry in the array is an object 
                  with a single val property that holds the ID of the SYSTEM item.
                $ref: "#/components/schemas/ValueObjectArray"
              suppliers:
                description: |-
                  The array that contains the IDs of any suppliers associated with the activity. 
                  Each entry in the array is an object with a single val property that holds 
                  the ID of the SUPPLIERCUSTOMER item.
                $ref: "#/components/schemas/ValueObjectArray"
              inputs:
                description: |-
                  The array with the IDs of any inputs linked to the activity. 
                  Each entry in the array is an object with a single val property 
                  that holds the ID of the INPUTOUTPUT item.
                $ref: "#/components/schemas/ValueObjectArray"
              comments:
                description: |-
                  The array that contains IDs of any comments that are linked to the activity. 
                  Each entry in the array is an object with a single val property that holds the 
                  ID of the COMMENT item.
                $ref: "#/components/schemas/ValueObjectArray"
              activityPolicies:
                $ref: "#/components/schemas/ValueObjectArray"
              playbackPath:
                $ref: "#/components/schemas/ValueObjectArray"
              childComments:
                description: |-
                  The array that contains IDs of replies to the comment. 
                  Each entry in the array is an object with a single val property 
                  that holds the ID of the COMMENT item.
                $ref: "#/components/schemas/ValueObjectArray"
              activityDecisionDiagram:
                type: string
                examples:
                  - "5f500e109293d"
              cost:
                type: string
                description: A number that represents the cost.
                format: integer
                examples:
                  - "10.00"
              risk:
                type: string
                description: |-
                  The amount of risk the activity introduces to the process. 
                  The risk is represented with one of the following numeric values.
                  - 1 - Controlled
                  - 2 - Low
                  - 3 - Medium
                  - 4 - High
                format: integer
                examples:
                  - "1"
                enum:
                  - 1
                  - 2
                  - 3
                  - 4
              ruleType:
                type: string
                examples:
                  - "ruleDecision"
              cycleTime:
                type: string
                description: |-
                  The cycle time value that is expressed with a number followed by a character unit marker.
                  - m - minutes
                  - h - hours
                  - d - days
                  - w - weeks
                  - M - months
                examples:
                  - ".64532m"
              waitTime:
                type: string
                examples:
                  - ".64532m"
              workTime:
                type: string
                examples:
                  - "20h"
              fileItems:
                type: array
                description: |-
                  The array with the IDs of file items that are linked to the activity. 
                  Each entry is an object with a val property that holds the ID of the fileItem item and the fileItemId property 
                  that holds the ID of an entry in the files map. The files map entry contains information about the file.
                items:
                  type: object
                  allOf:
                    - $ref: "#/components/schemas/ValueObject"
                  properties:
                    fileItemId:
                      type: string
                      description: The ID of the file in the files map.
                      examples:
                        - "5f500e11000fb"
              valueAdd:
                type: string
                description: |-
                  One of the following numeric values represents whether the activity adds value to the process.
                  - 1 - Yes
                  - 2 - No
                  - 3 - Required
                format: integer
                examples:
                  - "3"
                enum:
                  - "1"
                  - "2"
                  - "3"
              problems:
                type: array
                description: |-
                  The array of links to PROBLEM items. 
                  Each entry in the array is an object with a val property, 
                  which is the ID of the linked problem item and optional `frequency` and `severity` properties.
                items:
                  type: object
                  required:
                    - val
                  allOf:
                    - $ref: "#/components/schemas/ValueObject"
                  properties:
                    frequency:
                      type: string
                      description: |-
                        The frequency with which the problem occurs.
                        - Less than 3 is Low
                        - Less than 9 and more than 3 is Medium
                        - 9 or more is High

                        IBM Blueworks Live sets the values in the following way:
                        - 1 for Low
                        - 3 for Medium
                        - 9 for High
                      format: integer
                      examples:
                        - "9"
                      enum:
                        - "1"
                        - "3"
                        - "9"
                    severity:
                      type: string
                      description: |-
                        The severity of a problem. The values are classified in the following way:
                        - Less than 3 is Low
                        - More than 3 and less than 9 is Medium
                        - 9 or more is High

                        Blueworks Live sets the values in the following way:
                        - 1 for Low
                        - 3 for Medium
                        - 9 for High
                      format: integer
                      enum:
                        - "1"
                        - "3"
                        - "9"
                      examples:
                        - "3"
              policyAbrvDesc:
                type: string
                examples:
                  - "This policy describes the special considerations for handling relocations of military families. Unlike other policyholders, military personnel and their families are often allowed to keep their insurance when moving out of the area."
              itemParent:
                type: string
                examples:
                  - "3d920002"
              playbackParent:
                type: string
                examples:
                  - "5f500e10928e0"
              isRead:
                type: string
                description: The value of true is set if the comment was read.
                format: boolean
                examples:
                  - "true"
              createdByUserId:
                type: string
                description: The ID of the user who created the comment.
                examples:
                  - "7f0002"
              ownerId:
                type: string
                examples:
                  - "5f500e10900d2"
              createdDate:
                type: string
                description: The millisecond value that represents when the comment was created.
                format: integer
                examples:
                  - "1427234810125"
              createdByName:
                description: The name of the user who created the comment.
                type: string
                examples:
                  - "admin"
              attachedEventPort:
                type: string
                examples:
                  - "2-4"
              isPinned:
                type: string
                format: boolean
                examples:
                  - "false"
              hideOnMap:
                type: string
                description: Indicates whether the user chose to hide the item from the map view in Blueworks Live.
                format: boolean
                examples:
                  - "false"
    FollowedProcesses:
      description: Information about the processes that the user follows
      properties:
        followedProcesses:
          type: array
          items:
            $ref: "#/components/schemas/FollowedProcess"
    FollowedProcess:
      description: Information about the process that the user follows
      properties:
        processId:
          type: string
          description: The ID of the process.
          examples:
            - "1eeabc7ee8"
        name:
          type: string
          description: The name of the process.
          examples:
            - "1eeabc7ee8"
        modifiedUserName:
          type: string
          description: The name of the user who last modified the process.
          examples:
            - username
        modifiedDate:
          type: string
          format: date
          description: The date when the process was last modified.
    Usages:
      description: Usage information.
      properties:
        target-artifact-name:
          description: The name of the artifact being used.
          type: string
        target-artifact-id:
          description: The ID of the artifact being used.
          type: string
        usage-count:
          description: The total number of usages. This includes usages which may not be accessible to you.
          type: integer
        using-artifacts:
          description: The collection of artifacts that are using the target artifact. Only artifacts that are accessible to you are returned. This does not apply when the target is a business unit.
          type: array
          items:
            $ref: "#/components/schemas/LibraryArtifactFullSummary"
        using-users:
          description: The collection of users that are using the target artifact. This only applies when the target is a business unit.
          type: array
          items:
            $ref: "#/components/schemas/UserInfoSummary"
    BlueprintWorkHistories:
      type: array
      items:
        $ref: "#/components/schemas/BlueprintWorkHistory"
    BlueprintWorkHistory:
      type: object
      properties:
        workId:
          type: string
          description: The ID of the piece of work.
          example: "5f6000d330082"
        instanceName:
          type: string
          description: The name of the instance associated with the work.
          example: "work history pa - test work"
        status:
          type: string
          description: The status of the work.
          enum:
            - Completed
            - In Progress
          example: "Completed"
        completedTime:
          type: string
          format: date-time
          description: The timestamp when the work was completed.
          example: "2025-01-09T06:11:42.180+0000"
        processStartedBy:
          $ref: '#/components/schemas/ProcessStartedBy'
        processStartedOn:
          type: string
          format: date-time
          description: The timestamp when the work was started.
          example: "2025-01-09T06:11:34.699+0000"
    ProcessStartedBy:
      type: object
      properties:
        userId:
          type: string
          description: ID of the user who started the process.
          example: "7f0002"
        fullName:
          type: string
          description: Name of the user who started the process.
          example: "admin"
    BlueprintDetails:
      description: The details of a specific blueprint.
      allOf:
        - $ref: "#/components/schemas/LibraryArtifactFullSummary"
        - properties:
            milestone:
              type: array
              description: The milestones within the blueprint.
              items:
                $ref: "#/components/schemas/MilestoneDetails"
            text-annotations:
              description: The text annotations for a process that are not linked to any activities in the process.
              type: array
              items:
                $ref: "#/components/schemas/TextAnnotation"
    TextAnnotation:
      description: Contains the text and ID of a text annotation.
      properties:
        text:
          type: string
        id:
          type: string
    MilestoneDetails:
      properties:
        allOf:
          $ref: "#/components/schemas/ItemIdentity"
        activities:
          description: The activities, events, and gateways within the milestone.
          type: array
          items:
            $ref: "#/components/schemas/BlueprintItemDetails"
    ItemWithPropertiesDetails:
      description: Provides the properties for activities, sub-decisions, etc.
      properties:
        name:
          type: string
        id:
          type: string
        properties:
          items:
            type: object
          description: An array of property objects. The key will be the name of the property and the associated object will either have a name and an ID, or a value.
          type: array
    BlueprintItemDetails:
      properties:
        allOf:
          $ref: "#/components/schemas/ItemWithPropertiesDetails"
        type:
          description: The type of blueprint item.
          type: string
          enum:
            - activity
            - gateway
            - milestone
            - start-event
            - end-event
            - intermediate-event
            - boundary-event
        sub-type:
          description: The subtype of the activity.
          type: string
          enum:
            - decision-task
            - service-task
            - robotic-task
            - normal
            - subprocess
            - linked-process
            - parallel-gateway
            - inclusive-gateway
            - exclusive-gateway
            - message-send
            - message-receive
            - timer-event
            - error-event
            - escalation-event
            - message-event
        color:
          description: The activity color.
          type: string
          enum:
            - default
            - gray
            - blue
            - green
            - orange
            - purple
            - red
            - yellow
        color-label:
          description: The label assigned to the activity color. This value is defined in the color legend.
          type: string
        attached-boundary-events:
          description: The intermediate events attached to an activity.
          type: array
          items:
            $ref: "#/components/schemas/BlueprintItemDetails"
        text-annotation:
          description: The text annotation that is linked to the activity.
          $ref: "#/components/schemas/TextAnnotation"
        activities:
          description: If this item is a sub-process, the activities, events, and gateways within it.
          type: array
          items:
            $ref: "#/components/schemas/BlueprintItemDetails"
    Activity:
      type: object
      properties:
        records:
          type: array
          items:
            $ref: "#/components/schemas/Records"
    Records:
      required:
        - message
        - time
        - timeStamp
        - endTime
        - type
        - user
      type: object
      properties:
        message:
          type: string
          description: A brief description of an activity that took place.
          examples:
            - "user user_email_1@website.com opened a login session at 2014-04-01T16:58:39.184-05:00 and it was closed at 2014-04-01T17:40:47.134-05:00"
        time:
          type: string
          description: The date and time when operation took place.
          examples:
            - "2014-04-01T16:58:39.184-05:00"
        timestamp:
          type: string
          description: The date and time when operation took place.
          examples:
            - "2014-04-01T16:58:39.184-05:00"
        endTime:
          type: string
          description: The date and time when operation took place.
          examples:
            - "2014-04-01T16:58:39.184-05:00"
        type:
          type: string
          description: The type of change.
          examples:
            - "SESSION_TIMEOUT"
        user:
          type: string
          description: The user's full name.
          examples:
            - "user_email_1@website.com"
        itemId:
          type: string
          description: This field will provide a unique identifier for processes, policies, decisions, and spaces in the activity log.
          examples:
            - "d009b"
        activityName:
          type: string
          description: The name of activity item to which the record applied when the action occurred.
        activityType:
          type: string
          description: The major type of activity to which the record applied when the action occurred.
        copiedFromProcessName:
          type: string
          description: The link to process that it was copied from.
        invitedByUserName:
          type: string
          description: The full name of the user who sent the invite.
        invitedUserName:
          type: string
          description: The full name of the invited user.
        newGoalName:
          type: string
          description: The new name of the project goal.
        newLaneName:
          type: string
          description: The new name of the swim lane.
        newParentActivityName:
          type: string
          description: The name of the new parent of an activity item.
        newParentActivityType:
          type: string
          description: The major type of the new parent of an activity item.
        oldActivityType:
          type: string
          description: The major type of an activity item.
        oldGoalName:
          type: string
          description: The old name of the project goal.
        oldLaneName:
          type: string
          description: The old name of the swim lane.
        oldParentActivityName:
          type: string
          description: The name of the old parent of an activity item.
        oldParentActivityType:
          type: string
          description: The major type of the old parent of an activity item.
        parentActivityName:
          type: string
          description: The name of the parent of an activity item.
        parentGoalName:
          type: string
          description: The name of the parent of a project goal.
        subType:
          type: string
          description: The sub-type of the record. The value might be `null`.
    Messages:
      type: object
      properties:
        records:
          type: array
          items:
            $ref: "#/components/schemas/Message"
    Message:
      required:
        - name
        - description
        - group
      type: object
      properties:
        processId:
          type: string
          description: If the message is associated with a process, this property value is the ID of the process.
          examples:
            - "5f500e12a000f"
        name:
          type: string
          description: The full name of the user who is addressed in the message. If the user makes this API call, then the word You appears instead.
          examples:
            - "username"
        description:
          type: string
          description: The text of the message that includes <i> and <span> markup. The span has a class of date.
          examples:
            - "received <i>1 task<\\/i> in <i>ProcessApp with multiple tasks A - New for test.<\\/i> workflow <span class='date'>6:23 PM<\\/span>"
        group:
          type: string
          description: |-
            States when the event occurred and contains one of the following possible values:

            - Today
            - Yesterday
            - The actual date, if the event occurred from the day before yesterday to 7 days ago
            - Older, if the event occurred more than 7 days ago

          examples:
            - "2014-04-01T16:58:39.184-05:00"
        comment:
          type: string
          description: If the message is associated with a comment, this property value is the text of the comment.
          examples:
            - "comment 1"
    Artifact:
      type: object
      properties:
        parent-space-id:
          type: string
          description: The ID of the parent space to move the artifact into.
          examples:
            - "dff123456789"
        name:
          type: string
          description: The new name to give the artifact.
          examples:
            - "new_name"
    ArtifactsCopied:
      required:
        - new-artifact-id
      type: object
      properties:
        new-artifact-id:
          type: string
          examples:
            - "270b41"
        new-artifact-name:
          type: string
          examples:
            - My new space
        copied-artifacts:
          type: string
          examples:
            - ["124a71", "124a26"]
        not-copied:
          type: array
          items:
            properties:
              code:
                type: string
                description: |-
                  Validation Messages:
                  - BWLCS01	These artifacts are archived and cannot be copied.
                  - BWLCS02	This user does not have permission to copy these artifacts.
                  - BWLCS03	These file attachments are missing and cannot be copied.
                examples:
                  - BWLCS01
              message:
                type: string
                examples:
                  - These artifacts are archived and cannot be copied.
              items:
                type: string
                examples:
                  - ["122a35", "124a43"]
    ArtifactDeleteResult:
      required:
        - user-message
        - developer-message
      type: object
      description: The result of deleting an artifact.
      properties:
        user-message:
          type: string
          examples:
            - "Artifact deleted with warnings. There are active artifacts that contained links to it or incomplete work items based on it"
        developer-message:
          type: string
          examples:
            - "Artifact deleted with warnings. There are active artifacts that contained links to it or incomplete work items based on it"
        using-artifacts:
          type: array
          description: The artifacts that were deleted.
          items:
            $ref: "#/components/schemas/ArtifactItems"
        active-workitems:
          type: array
          items:
            $ref: "#/components/schemas/WorkItemSummary"
    SpaceDetails:
      properties:
        space-ids:
          type: string
          examples:
            - ["6000b5"]
        space-names:
          type: string
          examples:
            - ["XSpace"]
    WorkItemSummary:
      allOf:
        - $ref: "#/components/schemas/SpaceDetails"
      properties:
        name:
          type: string
          examples:
            - App1 - Launch me
        id:
          type: string
          examples:
            - "86005a"
        app-id:
          type: string
          examples:
            - "86002b"
    ArtifactItems:
      allOf:
        - $ref: "#/components/schemas/SpaceDetails"
      required:
        - id
        - name
        - type
        - space-ids
        - space-names
        - archived-state
        - published-state
        - last-modified-date
      description: Provides the ID and name of an item.
      properties:
        name:
          type: string
          examples:
            - LinkedToA
        id:
          type: string
          examples:
            - "6000be"
        type:
          type: string
          examples:
            - blueprint
        archived-state:
          type: string
          examples:
            - active
        published-state:
          type: string
          examples:
            - unpublished
        last-modified-date:
          type: string
          format: date-time
          examples:
            - "2020-09-02T19:13:19.041+0000"
    ItemName:
      description: Provides the name of an item.
      properties:
        name:
          type: string
          examples:
            - input1
    ItemIdentityArray:
      description: Provides the ID and name of an item List.
      type: array
      items:
        $ref: "#/components/schemas/ItemIdentity"
    ItemNameArray:
      description: Provides the ID and name of an item List.
      type: array
      items:
        $ref: "#/components/schemas/ItemName"
    ItemIdentity:
      description: Provides the ID and name of an item.
      properties:
        name:
          type: string
          examples:
            - input1
        id:
          type: string
          examples:
            - "13399a"
    GlossaryValueInfo:
      description: The details of a glossary value.
      properties:
        id:
          description: The ID of the glossary value.
          type: string
        name:
          description: The name of the glossary value.
          type: string
        category:
          description: The category in which glossary value resides. This may be one of the predefined categories. Or it may be the name of a custom property configured on the account.
          type: string
          enum:
            - participant-businessowner-expert
            - externalparticipant
            - system
            - supplier-customer
            - input-output
            - problem
            - kpi
            - businessunit
            - goal
            - tag
        active-state:
          description: The active state of the glossary value.
          type: string
          enum:
            - active
            - inactive
    GlossaryValueSummary:
      description: The details of a glossary value.
      allOf:
        - $ref: "#/components/schemas/GlossaryValueInfo"
      properties:
        description:
          description: The description of the glossary value.
          type: string
        visibility:
          description: The visibility of the glossary value.
          type: string
          enum:
            - always-visible
            - always-visible-and-preferred
            - visible-when-used
        enumerated:
          description: Whether the glossary value belongs to a category marked as enumerated.
          type: boolean
        added-by-user:
          description: The user who first added the value or first made it visible.
          $ref: "#/components/schemas/UserInfoSummary"
        added-by-date:
          description: The date the value was first added or first made visible. This is in ISO 8601 format.
          type: string
        type:
          description: A simple type associated with the glossary value. This only applies to input-output glossary values.
          type: string
          enum:
            - text
            - yes-no
            - integer
            - decimal
            - date
            - complex
        type-link:
          description: Identifies another glossary-value which serves as the type of this glossary value. This only applies to input-output glossary values.
          $ref: "#/components/schemas/ItemIdentity"
        content:
          description: The content of a glossary value. This only applies to complex input-output glossary values.
          type: array
          items:
            $ref: "#/components/schemas/ItemIdentity"
        url:
          description: The link to the glossary value.
          type: string
        hyperlink-references:
          description: The glossary value URL references.
          type: array
          items:
            $ref: "#/components/schemas/GlossaryUrlReferenceSummary"
        glossary-references:
          description: The linked glossary references.
          type: array
          items:
            $ref: "#/components/schemas/GlossaryValueSummary"
        file-references:
          description: The attached file references.
          type: array
          items:
            $ref: "#/components/schemas/GlossaryFileReferenceSummary"
    GlossaryUrlReferenceSummary:
      description: The details of a glossary value URL reference.
      properties:
        url:
          description: The hyperlink of the glossary value URL reference.
          type: string
        name:
          description: The display name of the glossary value URL reference.
          type: string
        added-by-date:
          description: The date the reference was added. This is in ISO 8601 format.
          type: string
        added-by-user:
          description: The user who added the glossary value reference.
          $ref: "#/components/schemas/UserInfoSummary"
    GlossaryFileReferenceSummary:
      description: The details of a glossary value file attachment.
      properties:
        name:
          description: The name of the file attachment.
          type: string
        added-by-date:
          description: The date the file attachment was added. This is in ISO 8601 format.
          type: string
        added-by-user:
          description: The user who added the glossary value file attachment.
          $ref: "#/components/schemas/UserInfoSummary"
    UserInfoSummary:
      description: Contains information about a user.
      properties:
        full-name:
          type: string
        email-address:
          type: string
          format: email
        id:
          type: string
    GlossaryValuesUpdateResult:
      description: Contains the result of updating or adding glossary values.
      properties:
        values-created:
          type: array
          description: The values that were created.
          items:
            $ref: "#/components/schemas/ItemIdentity"
        values-updated:
          type: array
          description: The values that were updated.
          items:
            $ref: "#/components/schemas/ItemIdentity"
        values-unchanged:
          type: array
          description: The values that remained unchanged.
          items:
            $ref: "#/components/schemas/ItemIdentity"
        values-skipped:
          type: array
          description: The values that were skipped because of validation errors.
          items:
            $ref: "#/components/schemas/GlossaryValueUpdateResult"
    GlossaryValueUpdateResult:
      description: The result of updating or creating a single glossary value.
      properties:
        id:
          description: The ID of the glossary value to update.
          type: string
          examples:
            - "1348d7"
        name:
          description: The name of the glossary value to update or create.
          type: string
          examples:
            - input1
        code:
          description: |-
            The error code for the update.
            - BWLGVU01  ID or name is not valid.
            - BWLGVU02  ID is not valid.
            - BWLGVU03  A value with this ID is not found.
            - BWLGVU04  You don't have access to that item to update it.
            - BWLGVU05  Name conflict with an existing item.
            - BWLGVU06  Name conflict with an existing item that you don't have access to.
            - BWLGVU07  Name conflict with 2 or more existing items.
            - BWLGVU08  The content is not valid.
            - BWLGVU09  An ID or name that is used in the type-link or content property is not found.
            - BWLGVU10  You don't have access to an ID or name that is used in the type-link or content property.
            - BWLGVU11  An ID or name that is used in the type-link or content property of the item refers to the item itself.
            - BWLGVU12  A glossary reference URL is not valid.
            - BWLGVU13  The ID of a linked glossary reference is not valid.
            - BWLGVU14  The ID, name, or type of a linked glossary reference is not valid.
            - BWLGVU15  An ID or name that is used in a linked glossary reference of an item refers to the item itself.
            - BWLGVU16  You don't have access to an ID or name that is used in a linked glossary reference.
            - BWLGVU17  An ID or name that is used in a linked glossary reference is not found.
            - BWLGVU18  An ID that is used in the type-link or content property of the item is not valid.
            - BWLGVU19  An ID or name that is used in the type-link or content property is not valid.
            - BWLGVU20  There are duplicate entries in the input. The first entry is used and all others are skipped.
          type: string
          enum:
            - BWLGVU01
            - BWLGVU02
            - BWLGVU03
            - BWLGVU04
            - BWLGVU05
            - BWLGVU06
            - BWLGVU07
            - BWLGVU08
            - BWLGVU09
            - BWLGVU10
            - BWLGVU11
            - BWLGVU12
            - BWLGVU13
            - BWLGVU14
            - BWLGVU15
            - BWLGVU16
            - BWLGVU17
            - BWLGVU18
            - BWLGVU19
            - BWLGVU20
          examples:
            - BWLGVU05
        message:
          description: The error message for the update.
          type: string
          examples:
            - An ID or name that is used in the type-link or content property is not found.
    GlossaryValueDeleteFailureResult:
      description: A failed attempt to delete a glossary value, caused when the value is being used.
      properties:
        user-message:
          type: string
        developer-message:
          type: string
        active-usages:
          description: The summary information of the artifacts referencing the glossary value that was deleted.
          type: array
          items:
            $ref: "#/components/schemas/LibraryArtifactBasicSummary"
        historical-usages:
          type: array
          items:
            $ref: "#/components/schemas/ArtifactInfo"
        user-usages:
          type: array
          items:
            $ref: "#/components/schemas/UserInfoSummary"
        glossary-usages:
          type: array
          items:
            $ref: "#/components/schemas/GlossaryValueInfo"
    ArtifactInfo:
      description: Basic details of a specific artifact.
      allOf:
        - $ref: "#/components/schemas/ItemIdentity"
      properties:
        type:
          description: The kind of artifact.
          type: string
          enum:
            - space
            - blueprint
            - process-app
            - decision
            - policy
        archived-state:
          description: Whether the artifact is active or archived.
          type: string
          enum:
            - active
            - archived
        last-modified-date:
          description: The date when the artifact was last modified. This date is returned in ISO 8601 format.
          type: string
    LibraryArtifactBasicSummary:
      description: Summary information for an artifact.
      allOf:
        - $ref: "#/components/schemas/SpaceDetails"
      properties:
        id:
          description: The unique identifier for the artifact.
          type: string
        name:
          description: The name of the artifact, as visible in the Library. If a named snapshot of the artifact was published, this will be the name of the artifact at the time the snapshot was created.
          type: string
        type:
          description: The kind of artifact.
          type: string
          enum:
            - space
            - blueprint
            - process-app
            - decision
            - policy
        current-name:
          description: The current name of the artifact.
          type: string
        tags:
          description: The tags associated with the artifact.
          type: array
          items:
            type: string
        archived-state:
          description: Whether the artifact is active or archived.
          type: string
          enum:
            - active
            - archived
        published-state:
          description: Whether the artifact is published.
          type: string
          enum:
            - published
            - unpublished
        published-date:
          description: The date when the artifact was published, or null if the artifact is not published. This date is returned in ISO 8601 format.
          type: string
          format: date-time
        published-snapshot-name:
          description: The name of the snapshot that was published, or null if the artifact is not published. If the current version was published, 'current-version' is returned.
          type: string
        published-snapshot-date:
          description: The date the named snapshot was published. Null if the artifact is not published or the current-version was published.
          type: string
          format: date-time
        last-modified-date:
          description: The date when the artifact was last modified. This date is returned in ISO 8601 format.
          type: string
          format: date-time
    CreateRevisionResult:
      description: Create Revision details
      properties:
        id:
          description: The ID of the created revision.
          type: string
          examples:
            - "1300a1"
        label:
          description: The label of the created revision.
          type: string
          examples:
            - Third Snapshot
        time:
          description: The time when the revision was created.
          type: string
          format: date-time
    RevisionResult:
      description: Details of Revisions
      properties:
        creationTime:
          description: The time when the process or the policy or the decision was created.
          type: string
          format: date-time
        id:
          description: |-
            The ID of the process, policy, or decision.
             This ID is the __artifact_id__ that is provided in the request URI. 
             The __artifact_id__ becomes the ID for each revision.
          type: string
          examples:
            - "130024"
        hasDiagram:
          description: Whether the process has a diagram. This property is valid only for processes.
          type: string
          format: boolean
          examples:
            - "true"
        lastModified:
          description: The time when the process, policy, or decision was last modified.
          type: string
          format: date-time
        revisions:
          description: Whether the process has a diagram. This property is valid only for processes.
          type: array
          items:
            $ref: "#/components/schemas/Revisions"
        tip:
          description: The current tip of the process. It determines whether the latest revision is the same as the tip.
          type: string
          examples:
            - "130089"
    Revisions:
      description: The list of revisions of the process, policy, or decision. This list is organized in reverse chronological order.
      properties:
        id:
          description: The ID of the revision.
          type: string
          examples:
            - "130089"
        hasDiagram:
          description: Whether the process has a diagram. This property is valid only for processes.
          type: string
          format: boolean
          examples:
            - "true"
        label:
          description: The label that was given to the revision when a snapshot or revision was created.
          type: string
          examples:
            - "Second Snapshot"
        revisionType:
          description: The type of revision.
          type: string
          enum:
            - userSnapshot
            - systemSnapshot
        time:
          description: The time when the revision was created.
          type: string
          format: date-time
    LibraryArtifactFullSummaryList:
      description: List of Summary information for an artifacts.
      type: array
      items:
        $ref: "#/components/schemas/LibraryArtifactFullSummary"
    BlueprintItemSummary:
      properties:
        id:
          type: string
        name:
          type: string
        type:
          description: The type of blueprint item.
          type: string
          enum:
            - blueprint
            - milestone
            - swimlane
            - activity
            - event
            - gateway
        blueprint-items:
          description: If this is a sub-process, the activities, events, and gateways within it.
          type: array
          items:
            $ref: "#/components/schemas/BlueprintItemSummary"
    BlueprintSummary:
      allOf:
        - $ref: "#/components/schemas/LibraryArtifactFullSummary"
        - properties:
            blueprint-items:
              description: Activities within the blueprint. This only applies in a where-used context. Only those activities that are using the target artifact are included.
              type: array
              items:
                $ref: "#/components/schemas/BlueprintItemSummary"
    LibraryArtifactFullSummary:
      description: Summary information for an artifact.
      allOf:
        - $ref: "#/components/schemas/LibraryArtifactBasicSummary"
      properties:
        created-date:
          description: The date when the artifact was created. This date is returned in ISO 8601 format.
          type: string
          format: date-time
        created-by-user:
          description: The user who created the artifact.
          $ref: "#/components/schemas/UserInfoSummary"
        last-modified-by-user:
          description: The last user to modify the artifact.
          $ref: "#/components/schemas/UserInfoSummary"
    Favorites:
      description: Favorites object
      properties:
        favorites:
          description: The list of favorite IDs.
          type: array
          items:
            properties:
              id:
                description: The ID of an item that is a part of the favorites list.
                type: string
                examples:
                  - "2c0007"
    ListFileDetails:
      description: List of file details
      properties:
        files:
          type: array
          items:
            $ref: "#/components/schemas/FileDetails"
    FileDetails:
      description: File details
      properties:
        fileId:
          description: The unique ID of the file.
          type: string
          examples:
            - "b0050"
        uploadUserId:
          description: The login ID or email address of the user who uploaded the file.
          type: string
          format: email
        uploadDate:
          description: The date when the file was uploaded, expressed in ISO 8601 format.
          type: string
          format: date
        fileSize:
          description: The file size in bytes.
          type: integer
          examples:
            - 591728
        fileName:
          description: The name of the file.
          type: string
          examples:
            - Earth.tif
        attachedToId:
          description: The ID of the process, post, or other item that the file is attached to.
          type: string
          examples:
            - b000f
        attachedToType:
          description: The process, post, or other type of object that the file is attached to.
          type: string
          examples:
            - process
          enum:
            - process
            - activity
            - app
            - instance
            - post
            - policy
            - decision
            - glossary
  parameters:
    xOnBehalfOf:
      name: X-On-Behalf-Of
      in: header
      description: |-
        The user context. The value must be a username in the account. The user must have permission to perform the action in the account and in the specified parent space, if any.
      required: false
      schema:
        type: string
        format: email
        examples:
          - user1@domain.com
    version20110917:
      name: version
      in: query
      required: true
      description: The version of the requested API.
      schema:
        type: string
        default: "20110917"
        enum:
          - "20110917"
    xIBMAPIVersion20160630:
      name: X-IBM-API-Version
      in: header
      description: |-
        The requested API version is 20160630.
      required: true
      schema:
        type: string
        default: "20160630"
        enum:
          - "20160630"
    xIBMAPIVersion:
      name: X-IBM-API-Version
      in: header
      description: |-
        The version of this API.
      required: false
      schema:
        type: string
        default: "1.0.0"
        enum:
          - "1.0.0"
    version1.0:
      name: version
      in: header
      description: |-
        The version of this API.
      required: true
      schema:
        type: string
        default: "1.0"
        enum:
          - "1.0"
    artifactIdPath:
      name: artifact-id
      in: path
      description: The ID of the artifact
      required: true
      schema:
        type: string
    blueprintIdPath:
      name: blueprint-id
      in: path
      description: The identifier of the blueprint.
      required: true
      schema:
        type: string
    revisionTypePath:
      name: type
      in: path
      required: true
      schema:
        type: string
        default: process
        enum:
          - process
          - policy
          - decision
    policyIdPath:
      name: policy-id
      in: path
      description: The identifier of the policy model of interest.
      required: true
      schema:
        type: string
    groupNamePath:
      name: group-name
      in: path
      required: true
      description: Name of the group
      schema:
        type: string
    userIdPath:
      name: user-id
      in: path
      required: true
      description: The identifier of the user.
      schema:
        type: string
    valueIdPath:
      name: value-id
      in: path
      description: The ID of the glossary value.
      required: true
      schema:
        type: string
    exportToSingleFileQuery:
      name: exportToSingleFile
      in: query
      required: false
      description: |-
        This parameter enables users to export the processes as a single BPMN 2.0 
        compliant XML file including the Diagram Interchange (DI) details. 
        It provides model interchange compatibility with third-party BPMN tools.
      schema:
        type: boolean
        default: false
    includeDiagramInterchangeQuery:
      name: includeDiagramInterchange
      in: query
      required: false
      description: |-
        Whether to include the BPMN2 Diagram Interchange (DI) in the export. 
        The DI covers visual information such as node positioning and bounds, 
        line ports, and labels.
      schema:
        type: boolean
        default: false
  responses:
    "200Successfully":
      description: The request was completed successfully.
    "400InvalidValues":
      description: There was an error processing the request. Required parameters were missing or contained invalid values.
    "401Unauthorized":
      description: The user isn't authorized to make the request.
    "403Forbidden":
      description: |-
        Access is forbidden. This message might appear for one of the following reasons:
        - This user doesn't have permission to move, rename, archive, publish, or unpublish this artifact.
        - This user doesn't have permission to copy an artifact to this parent space.
        - APIs aren't enabled by the administrator. APIs must be enabled on the __Account Information__ tab.
        - The administrator didn't accept the Terms and Conditions of service.
    "404ParametersNotFound":
      description: Activities with the specified parameters were not found.
    "404RevisionDoesntExist":
      description: The artifact or revision ID does not exist in the account.
    "405SelectGET":
      description: The specified method is not allowed. Select GET method for this request.
    "405SelectPOST":
      description: The specified method is not allowed. Select POST method for this request.
    "409CommandFailed":
      description: The command failed because the artifact has active links to it or work items based on it.
    "429RateLimit500ph":
      description: The request exceeded the rate limit of the API for this account.
      headers:
        Retry-After:
          schema:
            type: integer
          description: |-
            When the next request can be made, in number of seconds.

            IBM Blueworks Live applies a rate limit that determines how often this API can be called within a specific period. 

            The allowed rate is 500 requests per hour.

            The rate limit is applied to the whole account. Even if different authentication methods are used, the single account-wide rate is applied across all users.

            Once the rate limit for the API is exceeded for the account, the next request is rejected with status code 429 and response header Retry-After, which indicates the number of seconds when the next request can be made.
    "429RateLimit200ph":
      description: The request exceeded the rate limit of the API for this account.
      headers:
        Retry-After:
          schema:
            type: integer
          description: |-
            When the next request can be made, in number of seconds.

            IBM Blueworks Live applies a rate limit that determines how often this API can be called within a specific period. 

            The allowed rate is 200 requests per hour.

            The rate limit is applied to the whole account. Even if different authentication methods are used, the single account-wide rate is applied across all users.

            Once the rate limit for the API is exceeded for the account, the next request is rejected with status code 429 and response header Retry-After, which indicates the number of seconds when the next request can be made.
    "429RateLimitCopy100ph":
      description: The request exceeded the rate limit of the API for this account.
      headers:
        Retry-After:
          schema:
            type: integer
          description: |-
            When the next request can be made, in number of seconds.

            IBM Blueworks Live applies a rate limit that determines how often this API can be called within a specific period.

            The allowed rate for copying spaces is 10 requests per hour. 

            The allowed rate for copying other artifacts is 100 requests per hour.

            The rate limit is applied to the whole account. Even if different authentication methods are used, the single account-wide rate is applied across all users.

            Once the rate limit for the API is exceeded for the account, the next request is rejected with status code 429 and response header Retry-After, which indicates the number of seconds when the next request can be made.
    "429RateLimitBlueprint200pm":
      description: The request exceeded the rate limit of the API for this account.
      headers:
        Retry-After:
          schema:
            type: integer
          description: |-
            When the next request can be made, in number of seconds.

            IBM Blueworks Live applies a rate limit that determines how often this API can be called within a specific period. 

            The allowed rate is 200 requests per minute for a single user.

            Once the rate limit for the API is exceeded for the user, the next request is rejected with status code 429 and response header Retry-After, which indicates the number of seconds when the next request can be made.
    "429RateLimit30ph":
      description: The request exceeded the rate limit of the API for this account.
      headers:
        Retry-After:
          schema:
            type: integer
          description: |-
            When the next request can be made, in number of seconds.

            IBM Blueworks Live applies a rate limit that determines how often this API can be called within a specific period. 

            The allowed rate is 30 requests per hour.

            The rate limit is applied to the whole account. Even if different authentication methods are used, the single account-wide rate is applied across all users.

            Once the rate limit for the API is exceeded for the account, the next request is rejected with status code 429 and response header Retry-After, which indicates the number of seconds when the next request can be made.
  requestBodies:
    UserInfoRequest:
      description: Information about an user.
      required: true
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/UserInfo"
    ArtifactInputSummary:
      description: Information about an artifact.
      required: false
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Activity"
          examples:
            Example1:
              value:
                name: new_name
            Example2:
              value:
                parent-space-id: dff123456789
    CreatePolicy:
      required: true
      content:
        application/json:
          schema:
            type: object
            properties:
              policyName:
                type: string
              spaceId:
                type: string
    UpdatePolicy:
      required: true
      content:
        application/json:
          schema:
            type: object
            properties:
              description:
                type: string
              hyperlink-references:
                type: array
                items:
                  type: object
                  properties:
                    name:
                      type: string
                    url:
                      type: string
    GroupSummary:
      description: Information about an artifact.
      required: false
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/GroupDetail"
    GlossaryValueInputSummary:
      description: The details of a glossary value input.
      required: true
      content:
        application/json:
          schema:
            properties:
              id:
                description: The ID of the glossary value to update.
                type: string
                examples:
                  - "13399a"
              name:
                description: The name of the glossary value to create or update.
                type: string
                examples:
                  - input1
              description:
                description: The new description of the glossary value.
                type: string
                examples:
                  - This is the description
              visibility:
                description: The new visibility of the glossary value.
                type: string
                enum:
                  - always-visible
                  - always-visible-and-preferred
                  - visible-when-used
              type:
                description: A simple type associated with the glossary value. This only applies to input-output glossary values.
                type: string
                enum:
                  - text
                  - yes-no
                  - integer
                  - decimal
                  - date
                  - complex
              type-link:
                description: Another glossary-value that serves as the type of this glossary value. This only applies to input-output glossary values.
                $ref: "#/components/schemas/ItemIdentity"
              content:
                description: The content of a glossary value. This only applies to complex input-output glossary values.
                type: array
                items:
                  $ref: "#/components/schemas/ItemIdentity"
              hyperlink-references:
                description: The glossary value URL references. The name and url attributes are required.
                type: array
                items:
                  $ref: "#/components/schemas/GlossaryUrlReferenceSummary"
              glossary-references:
                description: The linked glossary references. The id attribute or the name and category attributes are required.
                type: array
                items:
                  $ref: "#/components/schemas/GlossaryValueSummary"
          examples:
            Create a glossary value:
              value:
                - name: input1
                  description: This is description
            Update a glossary value:
              value:
                - id: d0012
                  description: This is the new description
            Create and update glossary values:
              value:
                - name: input2
                  description: This is the description
                - name: input1
                - id: d0012
                  type: complex
                  content:
                    - name: input2
                    - id: 134567
            Create a glossary value with references:
              value:
                - name: input2
                  glossary-references:
                    - id: c0027
                    - name: Access Badge
                      category: input-output
                  hyperlink-references:
                    - url: http://yahoo.com
                      name: Yahoo
    ProcessUpdateRequest:
      required: true
      content:
        application/json:
          schema:
            properties:
              name:
                type: string
                description: The name of the item.
              participants:
                type: string
                description: The ID of the glossary value of participant-businessowner-expert category
              businessOwners:
                type: array
                description: The IDs of the glossary value of participant-businessowner-expert category
                items:
                  type: string
              experts:
                type: array
                description: The IDs of the glossary value of participant-businessowner-expert category
                items:
                  type: string
              systems:
                type: array
                description: The IDs of the glossary value of system category
                items:
                  type: string
              dueDateType:
                type: string
                description: To set a due date duration, Set duration needs to be passed.
                enum:
                  - Set duration
                  - No due date
              dueDateDuration:
                type: string
                description: |-
                  The due date time value that is expressed with a number followed by a character unit marker.

                  m	minutes  
                  h	hours  
                  d	days  
                  w	weeks  
                  M	months
              cycleTime:
                type: object
                description: The name of the item.
                properties:
                  workTime:
                    type: string
                    description: The work time value that is expressed with a number followed by a character unit marker.
                  waitTime:
                    type: string
                    description: The wait time value that is expressed with a number followed by a character unit marker.
              cost:
                type: string
                format:
                description: A number that represents the cost.
              suppliers:
                type: array
                description: The IDs of the glossary value of supplier-customer category
                items:
                  type: string
              inputs:
                type: array
                description: The IDs of the glossary value of input-output category
                items:
                  type: string
              outputs:
                type: array
                description: The IDs of the glossary value of input-output category
                items:
                  type: string
              customers:
                type: array
                description: The IDs of the glossary value of supplier-customer category
                items:
                  type: string
              risk:
                type: string
                description: The amount of risk the activity introduces to the process.
                enum:
                  - Controlled
                  - Low
                  - Medium
                  - High
              valueAdd:
                type: string
                description: Whether the activity adds value to the process.
                enum:
                  - "Yes"
                  - "No"
                  - "Required"
              problems:
                type: array
                description: Array of Problem items.
                items:
                  type: object
                  properties:
                    problem:
                      type: string
                      description: The ID of the glossary value of problem category
                    severity:
                      type: string
                      description: The severity of a problem.
                      enum:
                        - Low
                        - Medium
                        - High
                    frequency:
                      type: string
                      description: The frequency of a problem.
                      enum:
                        - Low
                        - Medium
                        - High
              activityPolicies:
                type: array
                description: The IDs of policy items
                items:
                  type: string
              decisions:
                type: string
                description: The ID of decision item
              custom_text_property:
                type: array
                description: The IDs of the glossary value of your custom text property category
                items:
                  type: string
              custom_number_property:
                type: string
                description: A number that represents the custom_number_property
    FileImportRequest:
      description: File import Request
      required: true
      content:
        multipart/form-data:
          schema:
            type: object
            required:
              - space-id
              - file
            properties:
              space-id:
                type: string
                description: Space identifier where the process will be imported
              name:
                type: string
                description: Name of root process.
              file:
                type: string
                format: binary
                description: The file data. Accepts a BWL export ZIP, or a BPMN 2.0 file with .txt or .bpmn file extension.
    FileUploadRequest:
      description: File upload Request
      required: true
      content:
        multipart/form-data:
          schema:
            type: object
            required:
              - locationField
              - fileData
            properties:
              locationField:
                type: string
                description: |-
                  Depending on the object that the file is attached to
                enum:
                  - activity
                  - app
                  - decision
                  - instance
                  - policy
                  - post
              ancestorIdField:
                type:
                  - string
                  - "null"
                description: |-
                  The meaning depends on __locationField__ value:
                  - The process blueprint ID for an `activity`
                  - The process application ID for an `app`
                  - The decision diagram ID for a `decision`
                  - The work ID of an existing instance for an `instance`
                  - For all other __locationField__ values, this parameter does not need to be provided
              parentIdField:
                type: string
                description: |-
                  The meaning depends on __locationField__ value:
                  - The process ID for an `activity`
                  - The application ID for an `app`
                  - The decision ID for a `decision`
                  - The work ID of an existing instance for an `instance`
                  - The policy ID for a `policy`
                  - This value does not have to be provided for post
              fileData:
                type: string
                format: binary
                description: The file data.
    SpacePermissionsRequest:
      required: true
      content:
        application/json:
          schema:
            properties:
              inheritParentSpace:
                type: boolean
                default: true
                description: Inherits the same permissions as that of the parent space.
              users:
                type: array
                items:
                  type: object
                  properties:
                    participantId:
                      type: string
                      description: |-
                        - The ID of the user or user group. 
                        - The IDs can be fetched from the APIs "/scr/api/UserList" with version '20110917' and "/scr/api/ManageGroup" with version '2.0'
                    participantType:
                      type: string
                      enum:
                        - "all-editors"
                        - "all-contributors"
                        - "all-community"
                        - "all-admins"
                        - "all-viewers"
                      description : The type of participant(only applicable for 'all-editors', 'all-contributors', 'all-community', 'all-admins', 'all-viewers')
                    permissions:
                      type: object
                      description: |-
                        - For participantId, all the permissions are required in the request.
                        - For participantType, only the permissions available to that participant can be given in the request.
                        - 'all-editors' and 'all-editors' needs all othe permissions.
                        - 'all-contributors' needs only automateProcesses and manageAndEdit permissions.
                        - 'all-community' and 'all-viewers' does not need permissions.
                      required:
                        - blueprintProcesses
                        - automateProcesses
                        - composeDecisions
                        - authorPolicies
                        - manageAndEdit
                      properties:
                        blueprintProcesses:
                          type: boolean
                        automateProcesses:
                          type: boolean
                        composeDecisions:
                          type: boolean
                        authorPolicies:
                          type: boolean
                        manageAndEdit:
                          type: boolean
  securitySchemes:
    # serviceId:
    #   type: oauth2
    #   flows:
    #     clientCredentials:
    #       tokenUrl: /oauth/token?grant_type=client_credentials
    #       scopes: {}
    # userServiceId:
    #   type: oauth2
    #   flows:
    #     clientCredentials:
    #       tokenUrl: /oauth/token?grant_type=client_credentials&consent_type=user_consent
    #       scopes: {}
    bearer:
      type: http
      scheme: bearer
security:
  - bearer: []
