openapi: 3.0.3
info:
  version: "24"
  title: Decisions
  description: The Decisions API supports the life cycle of decision data.
  contact:
    name: SAS Developers
    url: https://developer.sas.com
    email: devex@sas.com
  termsOfService: https://www.sas.com/en_us/legal/copyright.html
  license:
    name: SAS Institute
    url: https://support.sas.com/techsup/license/index.html
servers:
  - url: https://example.com/decisions
    description: This is an example of a base URL.
externalDocs:
  description: Developer documentation
  url: https://developer.sas.com
tags:
  - name: Root
    description: Contains the operations for the root resource.
  - name: Decisions
    description: Contains the operations to create, read, update, and delete decisions.
  - name: Decision Revisions
    description: Contains the operations to create, read, and delete decision revisions.
  - name: Code Files
    description: Contains the operations for code files.
  - name: Code File Revisions
    description: Contains the operations for code file revisions.
  - name: Decision Node Types
    description: Contains the operations for decision node types.
  - name: Decision Types
    description: Contains the operations for decision types.
  - name: Validations
    description: Contains the operations for validation.
  - name: Segmentation Trees
    description: Contains the operations for segmentation trees.
  - name: Segmentation Tree Revisions
    description: Contains the operations for segmentation tree revisions.
paths:
  /:
    get:
      operationId: root
      tags:
        - Root
      summary: Get a list of top-level links
      description: Returns a list of top-level resource links for this API.
      responses:
        "200":
          description: The request succeeded. A collection of link objects was returned.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.api+json:
              schema:
                $ref: "#/components/schemas/api"
              examples:
                root:
                  $ref: "#/components/examples/root"
            application/json:
              schema:
                $ref: "#/components/schemas/api"
              examples:
                root:
                  $ref: "#/components/examples/root"
  /flows:
    get:
      operationId: getDecisions
      tags:
        - Decisions
      summary: Get a list of all decisions
      description: Returns a resource collection of all decisions.
      parameters:
        - name: filter
          description: The criteria for filtering the decision flows. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: The criteria for sorting the decision flows. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based.
          schema:
            type: integer
            default: 0
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted.
          schema:
            type: integer
            default: 10
          example: 500
        - name: parentFolderUri
          in: query
          description: The folder where the target decisions are located.
          required: false
          schema:
            type: string
            format: /folders/folders/{parentFolderId}
          example: /folders/folders/@public
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision+json
        - name: stepObjectUri
          in: query
          description: If provided, only decisions that contain a step object matching this URI are returned. The supported step types to search for are model steps, rule set steps, or custom object steps. For models and rule sets, the URI should include only the object's ID (no revision). For custom objects, any decisions with a custom object step referencing an object whose URI starts with the provided value is returned.
          schema:
            type: string
          examples:
            modelStep:
              value: /modelrepositoiry/models/7396c9ee-1860-477c-ac9f-0b91824c7d25
              summary: Model step.
            ruleSetStep:
              value: /businessRules/ruleSets/321d4afb-daf3-49fe-a3b5-8a8deefe29e2
              summary: Rule set step
            subDecisionStep:
              value: /decisions/flows/ef613bb5-d855-4227-97ac-9e9bfefe3e4a
              summary: Sub-decision step.
            codeFileStep:
              value: /decisions/codeFiles/d5704165-7d0c-4c36-8444-9ae3e2357a3b
              summary: Code file step.
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/decisionCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlows"
                application/vnd.sas.decision+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlows"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlows"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/decisionCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlows"
                application/vnd.sas.decision+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlows"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlows"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "406":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: The request was not acceptable. An invalid media type was specified for the `Accept-Item` header value.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notAcceptable"
    post:
      summary: Create a decision
      operationId: createDecision
      description: Creates a new decision based on the provided content.
      tags:
        - Decisions
      parameters:
        - name: parentFolderUri
          in: query
          description: The folder in which the new decision is placed.
          required: false
          schema:
            type: string
            format: /folders/folders/{parentFolderId}
          example: /folders/folders/@public
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the decision revision from which the new decision is being created. This property enables you to trace the lineage of a decision.
          schema:
            type: string
            format: /decisions/flows/{decisionId}/revisions/{revisionId}
          example: /decisions/flows/ef613bb5-d855-4227-97ac-9e9bfefe3e4a/revisions/ba14828c-b4b6-4a3a-9246-f51dd16ffcba
      requestBody:
        content:
          application/vnd.sas.decision+json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Condition Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithConditionExpression"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Equals Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEqualsExpression"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Like Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLikeExpression"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Branch Range Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRangeExpression"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
          application/json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Condition Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithConditionExpression"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Equals Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEqualsExpression"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Like Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLikeExpression"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Branch Range Expression:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRangeExpression"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
        description: A decision summary to create a decision.
        required: true
      responses:
        "201":
          description: The decision was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/flows/094078e7-278a-4719-a704-6e5e65af29ee
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision+json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}":
    get:
      summary: Get decision content
      description: Retrieves the contents of a decision.
      operationId: getDecision
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision+json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlow"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      summary: Update a decision
      description: Updates the decision.
      operationId: updateDecision
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: If-Match
          in: header
          required: true
          description: The `ETag` value from when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
      requestBody:
        content:
          application/vnd.sas.decision+json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
          application/json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
        description: The decision content to use in the update.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision+json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include a `If-Match` precondition.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    delete:
      summary: Delete a decision
      operationId: deleteDecision
      tags:
        - Decisions
      description: Deletes the specified decision.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "204":
          description: The decision was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/flows/{decisionId}#revisionSummary":
    get:
      deprecated: true
      summary: Get decision revision summary content
      description: Retrieves the contents of a decision as a decisioning revision summary. This is deprecated. Please use endpoint `/flows/{decisionId}` and provide request header `Accept` as `application/vnd.sas.dcm.summary+json`.
      operationId: getDecisionDCMSummary
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlow"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/code":
    get:
      summary: Get decision code
      operationId: getDecisionCode
      description: Retrieves the DS2 package code, which can be used to execute the decision.
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: codeTarget
          in: query
          schema:
            type: string
            enum:
              - microAnalyticService
              - docker
              - gitMas
              - gitCas
              - procds2
              - casFull
              - inDatabase
              - spre
              - subDecision
              - others
          example: microAnalyticService
          description: >
            The type of platform or scenario in which the generated code is used.

            Code targets:

              * `microAnalyticService` - Use this target type when the generated DS2
            is going to be run on SAS Micro Analytic Service.
              * `docker` - Use this target type when the code must be published to Docker.
              * `gitMas` - Use this target type when the code must be published to Git
            MAS.
              * `gitCas` - Use this target type when the code must be published to Git
            CAS.
              * `procds2` - Use this target type when code must be run inside a SPRE
            session. The data query is executed using sqlstmt package.
              * `casFull` - Use this target type to produce a full DS2 program for running
            inside CAS, including the thread and data program in addition to the needed packages.
              * `inDatabase` - Use this target type to produce a DS2 program for running
            in-database.
              * `spre` - Use this target type when code must be run inside a SPRE session.
            The data query is executed in SAS Micro Analytic Service (MAS).
              * `subDecision` - Use this target type when the code is included as part
            of another decision and should not be wrapped in a driver.
              * `others` - Use this target type in all other cases.
        - name: inlineAdvanceListValues
          in: query
          required: false
          description: Specifies whether the currently deployed rows in an advanced list are included as inline values within the generated code. Advanced lists and rows within an advanced list can be deployed by using the SAS Intelligent Decisioning web application, the SAS Fraud Decisioning application, or the List Data API. If this parameter is 'true', the deployed rows in an advanced list are re-created as a data grid in the generated code. If this parameter is 'false', the advanced list must exist as a tabular data set on the Redis server. To get generated code for Cloud Analytic Server, Teradata, or Hadoop destinations, specify 'true' as the parameter value.
          schema:
            type: boolean
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Location:
              description: The location of the async code job. Available only when the accept is `text/vnd.sas.source.ds2.async`.
              schema:
                type: string
              example: /jobExecution/jobs/bc38897b-7875-425d-8f00-bca10ddac3fb
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
            text/vnd.sas.source.ds2.async:
              schema:
                type: string
              example: ""
        "404":
          description: No decision code exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/mappedCode":
    post:
      summary: Get the mapped code for a decision
      operationId: getMappedDecisionCode
      tags:
        - Decisions
      description: Returns the code that is used to run the decision based on the provided data and mapping information in the request.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionFlow"
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
          application/json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/mappedCode#unbound":
    post:
      deprecated: true
      summary: Get decision code without score definition
      operationId: getMappedDecisionCodeUnbounded
      tags:
        - Decisions
      description: Returns the code to be able to run the decision based on mapping to a static input and output data set of SASEP.IN and SASEP.OUT rather than binding to a score definition. This is deprecated. Use endpoint `/flows/{decisionId}/mappedCode` with `Content-Type` header as `application/vnd.sas.score.code.generation.request.unbound+json`.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/mappedCode#unboundCodeOnly":
    post:
      deprecated: true
      summary: Get decision code not bound to a score definition
      operationId: getMappedDecisionCodeUnboundedText
      tags:
        - Decisions
      description: Returns the code directly as text without being wrapped in a JSON model, that a user can use to be able to run the decision based on mapping to a static input and output data set of SASEP.IN and SASEP.OUT rather than binding to a score definition. This is deprecated. Use the endpoint `/flows/{decisionId}/mappedCode` with `Accept` header as `text/vnd.sas.source.ds2`.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/analysisCode":
    post:
      summary: Get the analysis code for a decision
      operationId: getAnalysisCode
      tags:
        - Decisions
      description: Returns the analysis code that is used to generate the rule fired or path tracking reports based on the scoring definition.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      requestBody:
        content:
          application/vnd.sas.score.analysis.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/analysisCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/analysisCodeGenerationRequestForDecisionFlow"
          application/json:
            schema:
              $ref: "#/components/schemas/analysisCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/analysisCodeGenerationRequestForDecisionFlow"
        description: The information for scoreExecutionId and hints.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.analysis.code+json:
              schema:
                $ref: "#/components/schemas/analysisCode"
              examples:
                default:
                  $ref: "#/components/examples/analysisCodeOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/analysisCode"
              examples:
                default:
                  $ref: "#/components/examples/analysisCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/decisionStepCode":
    get:
      tags:
        - Decisions
      summary: Get decision step code
      description: Returns the step code for the specified decision.
      operationId: getDecisionDecisionStepCode
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionFlow"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/externalArtifacts":
    get:
      summary: Get a list of external artifacts for a decision
      description: >-
        Returns the list of external artifacts used by a decision revision. Objects used by a step of the steps collection in a decision flow are considered external artifacts. Some examples of such objects are files and web services. This endpoint returns the collection of external artifacts. The collection might be empty if there is no external artifact used by any step of the decision.

        The expected number of external artifacts is small. Therefore, this endpoint does not support any paging, filtering, or sorting of parameters.
      operationId: getDecisionExternalArtifacts
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          description: The identifier for the decision.
          required: true
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: Accept-Item
          in: header
          description: Used for selecting the desired item representation.
          schema:
            type: string
            enum:
              - application/vnd.sas.decision.external.artifact+json
            default: application/vnd.sas.decision.external.artifact+json
            example: application/vnd.sas.decision.external.artifact+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/externalArtifactsCollection"
              examples:
                default:
                  $ref: "#/components/examples/externalArtifactsOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/externalArtifactsCollection"
              examples:
                default:
                  $ref: "#/components/examples/externalArtifactsOfDecisionFlow"
        "404":
          description: No resource exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/legacyVariables":
    get:
      summary: Get legacy Variables of decision
      operationId: getDecisionLegacyVariables
      description: Retrieves the legacy variables of the decision, which can be added back to the decision.
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: filter
          description: The criteria for filtering the decision legacy variables. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: The criteria for sorting the decision legacy variables. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: >
            The starting index of the first item in a page. The index is

            0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: >
            The maximum number of items to return in this page of results.

            The actual number of returned items might be less if the collection has

            been exhausted. The default is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.variable+json
            default: application/vnd.sas.decision.variable+json
          example: application/vnd.sas.decision.variable+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionVariablesCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionVariablesDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionVariablesCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionVariablesDecisionFlow"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/errors":
    get:
      summary: Get validation errors for a decision
      operationId: getDecisionErrors
      description: Retrieves the validation errors for a decision and also its sub-decisions.
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: filter
          description: The criteria for filtering the decision validation errors. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(stepId, '410d5536-453d-48f4-b53b-206a3eadc58f')
        - name: sortBy
          description: The criteria for sorting the decision validation errors. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: decisionName:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted. The default is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.validation.error+json
            default: application/vnd.sas.decision.validation.error+json
          example: application/vnd.sas.decision.validation.error+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionValidationErrorsCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionValidationErrorsDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionValidationErrorsCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionValidationErrorsDecisionFlow"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/errorMarkers":
    get:
      tags:
        - Decisions
      summary: Get decision error markers
      description: Returns a collection of error markers for a decision scoring test.
      operationId: getDecisionErrorMarkers
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: executionId
          in: query
          required: true
          description: sc497f6eca-6276-4993-bfeb-53cbbbba6f08
          schema:
            type: string
          example: 497f6eca-6276-4993-bfeb-53cbbbba6f08
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionErrorMarkerCollection"
              examples:
                default:
                  $ref: "#/components/examples/errorMarkersForDecision"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionErrorMarkerCollection"
              examples:
                default:
                  $ref: "#/components/examples/errorMarkersForDecision"
        "404":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/dependencies":
    get:
      summary: Get direct dependent objects
      operationId: getDecisionDependencies
      description: Retrieves the URIs of the direct dependent objects of the decision.
      tags:
        - Decisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: Accept
          in: header
          description: Used for selecting the desired representation.
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.transfer.dependencies+json
            default: application/vnd.sas.transfer.dependencies+json
            example: application/vnd.sas.transfer.dependencies+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.transfer.dependencies+json:
              schema:
                $ref: "#/components/schemas/directDependentObjects"
              examples:
                default:
                  $ref: "#/components/examples/directDependentObjects"
            application/json:
              schema:
                $ref: "#/components/schemas/directDependentObjects"
              examples:
                default:
                  $ref: "#/components/examples/directDependentObjects"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /terms:
    get:
      summary: Get terms by name in all decisions
      operationId: getDecisionTerms
      description: Gets terms by name in all decisions.
      tags:
        - Decisions
      parameters:
        - name: name
          required: true
          description: The name of the term to search by.
          in: query
          schema:
            type: string
          example: myTermName
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollectionOfDecisions"
            application/json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollectionOfDecisions"
  "/flows/{decisionId}/revisions":
    get:
      summary: Get all revisions for a decision
      description: Retrieves a list of all revisions that exist for a decision.
      operationId: getDecisionRevisions
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for a decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: filter
          description: The criteria for filtering the decision flow revisions. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: The criteria for sorting the decision flow revisions. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted. The default is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/decisionCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlowRevisions"
                application/vnd.sas.decision+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevisions"
                application/vnd.sas.dcm.decision+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevisions"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/decisionCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlowRevisions"
                application/vnd.sas.decision+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevisions"
                application/vnd.sas.dcm.decision+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevisions"
        "404":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: No decision exists at the requested path.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    post:
      summary: Create a decision revision
      operationId: createDecisionRevision
      tags:
        - Decision Revisions
      description: Creates a new revision for the decision.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for a decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionType
          in: query
          description: Valid Values are 'major' or 'minor'. This value determines how the server generates the major or minor revision numbers. If major is provided the next available major revision number is initiated. For example, if the decision has revisions 1.0, 1.1, 1.2, 2.0, 2.1, when you create a new major revision the result is 3.0. If minor is provided, then the next available minor revision number is reserved based on the existing revisions. This parameter is defaulted to 'minor', if not supplied.
          schema:
            type: string
            enum:
              - major
              - minor
          example: major
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the decision revision from which the new decision is created. This property enables you to trace the lineage of a decision. The valid format for this parameter is '/decisions/flows/${decisionId}/revisions/${revisionId}'
          schema:
            type: string
          example: /decisions/flows/ef613bb5-d855-4227-97ac-9e9bfefe3e4a/revisions/ba14828c-b4b6-4a3a-9246-f51dd16ffcba
      requestBody:
        content:
          application/vnd.sas.decision+json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
          application/json:
            schema:
              $ref: "#/components/schemas/decision"
            examples:
              With a Code File:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCodeFile"
              With a Rule Set:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRuleset"
              With a Sub-Decision:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithSubDecision"
              With a Treatment Group:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithTreatmentGroup"
              With a Record Contact:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithRecordContact"
              With a SAS Micro Analytic Service Module:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithMASModule"
              With a Condition:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCondition"
              With a Branch Equals:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchEquals"
              With a Branch Like:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchLike"
              With a Branch Range:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithBranchRange"
              With a Custom Context:
                $ref: "#/components/examples/createOrUpdateDecisionFlowWithCustomContext"
        required: true
      responses:
        "201":
          description: A revision of the decision was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/flows/094078e7-278a-4719-a704-6e5e65af29ee/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
            ETag:
              description: The entity tag for the decision flow revision.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision+json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevision"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: No decision exists at the requested path.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}":
    get:
      summary: Get content for a decision revision
      description: Retrieves the content for the decision revision requested.
      operationId: getDecisionRevision
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the decision revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow revision.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision+json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevision"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionFlowRevision"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/decision"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionFlowRevision"
        "404":
          description: No decision revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    delete:
      summary: Delete a locked decision revision
      operationId: deleteDecisionRevision
      tags:
        - Decision Revisions
      description: Deletes the specified locked decision revision.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the decision revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "204":
          description: The decision revision was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/flows/{decisionId}/revisions/{revisionId}#revisionSummary":
    get:
      deprecated: true
      summary: Get content for a decision revision
      description: Retrieves the content for the decision revision requested. This is deprecated. Use endpoint `/flows/{decisionId}/revisions/{revisionId}` with `Accept` header as `application/vnd.sas.dcm.summary+json`.
      operationId: getDecisionRevisionDCMSummary
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the decision revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow revision.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevision"
        "404":
          description: No decision revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/code":
    get:
      summary: Get code for a decision revision
      description: Retrieves the DS2 package code, which can then be used to execute the decision revision.
      operationId: getDecisionRevisionCode
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the decision revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: codeTarget
          in: query
          schema:
            type: string
            enum:
              - microAnalyticService
              - docker
              - gitMas
              - gitCas
              - procds2
              - casFull
              - inDatabase
              - spre
              - subDecision
              - others
          example: microAnalyticService
          description: >
            The type of platform or scenario in which the generated code is used.

            Code targets:

              * `microAnalyticService` - Use this type when the generated DS2 is going
            to be run on SAS Micro Analytic Service.
              * `docker` - Use this target type when the code must be published to Docker.
              * `gitMas` - Use this target type when the code must be published to Git
            MAS.
              * `gitCas` - Use this target type when the code must be published to Git
            CAS.
              * `procds2` - Use this target type when code must be run inside a SPRE
            session. The data query is executed using sqlstmt package.
              * `casFull` - Use this target type to produce a full DS2 program for running
            inside CAS, including the thread and data program in addition to the needed packages.
              * `inDatabase` - Use this target type to produce a DS2 program for running
            in-database.
              * `spre` - Use this target type when code must be run inside a SPRE session.
            The data query is executed in SAS Micro Analytic Service (MAS).
              * `subDecision` - Use this target type when the code is included as part
            of another decision and should not be wrapped in a driver.
              * `others` - Use this target type in all other cases.
        - name: inlineAdvanceListValues
          in: query
          required: false
          description: Specifies whether the currently deployed rows in an advanced list are included as inline values within the generated code. Advanced lists and rows within an advanced list can be deployed by using the SAS Intelligent Decisioning web application, the SAS Fraud Decisioning application, or the List Data API. If this parameter is 'true', the deployed rows in an advanced list are re-created as a data grid in the generated code. If this parameter is 'false', the advanced list must exist as a tabular data set on the Redis server. To get generated code for Cloud Analytic Server, Teradata, or Hadoop destinations, specify 'true' as the parameter value.
          schema:
            type: boolean
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Location:
              description: The location of the async code job, which is available only when the accept is `text/vnd.sas.source.ds2.async`.
              schema:
                type: string
              example: /jobExecution/jobs/bc38897b-7875-425d-8f00-bca10ddac3fb
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
            text/vnd.sas.source.ds2.async:
              schema:
                type: string
              example: ""
        "404":
          description: No code for the decision revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/mappedCode":
    post:
      summary: Get the mapped code of a decision revision
      operationId: getMappedCodeRevision
      tags:
        - Decision Revisions
      description: Returns the code bound to data specified in the score request for execution for the decision revision.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionFlow"
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
          application/json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/revisions/{revisionId}/mappedCode#unbound":
    post:
      deprecated: true
      summary: Get decision revision code without a score definition
      operationId: getMappedCodeRevisionUnbound
      tags:
        - Decision Revisions
      description: Returns the code to be able to run the decision revision based on mapping to a static input and output data set of SASEP.IN and SASEP.OUT rather than binding to a score definition. This is deprecated. Please use endpoint `/flows/{decisionId}/revisions/{revisionId}/mappedCode` with `Content-Type` header as `application/vnd.sas.score.code.generation.request.unbound+json`.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/revisions/{revisionId}/mappedCode#unboundCodeOnly":
    post:
      deprecated: true
      summary: Get code for decision revision not bound to score definition
      operationId: getMappedCodeRevisionUnboundText
      tags:
        - Decision Revisions
      description: Returns the code directly as text without being wrapped in a JSON model, that a user can use to be able to run the decision revision based on mapping to a static input and output data set of SASEP.IN and SASEP.OUT rather than binding to a score definition. This is deprecated. Please use the endpoint `/flows/{decisionId}/revisions/{revisionId}/mappedCode` with header `Content-Type` as `application/vnd.sas.score.code.generation.request.unbound+json` and header `Accept` as `text/vnd.sas.source.ds2`.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request.unbound+json:
            schema:
              $ref: "#/components/schemas/unboundScoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestUnboundForDecisionFlow"
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/revisions/{revisionId}/analysisCode":
    post:
      summary: Get analysis code for decision revision
      operationId: getAnalysisCodeRevision
      tags:
        - Decision Revisions
      description: Retrieves the analysis code that is required for the collection rule fired or path tracking information for the decision revision.
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.score.analysis.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/analysisCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/analysisCodeGenerationRequestForDecisionFlow"
          application/json:
            schema:
              $ref: "#/components/schemas/analysisCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/analysisCodeGenerationRequestForDecisionFlow"
        description: Analysis request information, which includes the type and name of the analysis that is being performed.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.analysis.code+json:
              schema:
                $ref: "#/components/schemas/analysisCode"
              examples:
                default:
                  $ref: "#/components/examples/analysisCodeOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/analysisCode"
              examples:
                default:
                  $ref: "#/components/examples/analysisCodeOfDecisionFlow"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/flows/{decisionId}/revisions/{revisionId}/decisionStepCode":
    get:
      tags:
        - Decision Revisions
      summary: Get decision revision step code
      description: Returns the decision step code for the specified decision revision.
      operationId: getDecisionRevisionDecisionStepCode
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionFlowRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionFlowRevision"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/externalArtifacts":
    get:
      summary: Get list of external artifacts for decision revision
      description: >-
        Returns the list of external artifacts used by a decision revision. Objects used by a step of the steps collection in a decision flow are considered external artifacts. Some examples of such objects are files and web services. This endpoint returns the collection of external artifacts. The collection might be empty if there is no external artifact used by any step of the decision.

        The expected number of external artifacts is small. Therefore, this endpoint does not support any paging, filtering, or sorting of parameters.
      operationId: getDecisionRevisionExternalArtifacts
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          description: The identifier of the decision.
          required: true
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier of the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: Accept-Item
          in: header
          description: Used for selecting the desired item representation.
          schema:
            type: string
            enum:
              - application/vnd.sas.decision.external.artifact+json
            default: application/vnd.sas.decision.external.artifact+json
          example: application/vnd.sas.decision.external.artifact+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/externalArtifactsCollection"
              examples:
                default:
                  $ref: "#/components/examples/externalArtifactsOfDecisionFlowRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/externalArtifactsCollection"
              examples:
                default:
                  $ref: "#/components/examples/externalArtifactsOfDecisionFlowRevision"
        "404":
          description: No resource exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/nodeObjects":
    get:
      summary: Get list of decision node reference objects for decision revision
      description: >-
        Returns the list of decision node reference objects used by a decision revision. Decision node reference objects can be rule sets, models, treatment definition groups, lookup tables, code files, or subdecisions. This endpoint returns the collection of decision node reference objects.

        This endpoint does not support any paging.
      operationId: getDecisionRevisionNodeReferenceObjects
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          description: The identifier of the decision.
          required: true
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier of the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: Accept-Item
          in: header
          description: Used for selecting the desired item representation.
          schema:
            type: string
            enum:
              - application/vnd.sas.decision.node.reference+json
            default: application/vnd.sas.decision.node.reference+json
            example: application/vnd.sas.decision.node.reference+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionNodeReferenceObjectCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionNodeReferenceObjectsOfDecisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeReferenceObjectCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionNodeReferenceObjectsOfDecisionFlow"
        "404":
          description: No decision flow revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/checkOuts":
    get:
      summary: Get list of all checkouts for a decision revision
      description: >
        Returns the complete list of checkouts for a decision revision.


        Note: This endpoint does not support paging.
      operationId: getAllDecisionRevisionCheckouts
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          description: The identifier of the decision.
          required: true
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier of the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: Accept-Item
          in: header
          description: Used for selecting the desired item representation.
          schema:
            type: string
            enum:
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.dcm.summary+json
            example: application/vnd.sas.dcm.summary+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevisions"
            application/json:
              schema:
                $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionFlowRevisions"
        "404":
          description: No decision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/errors":
    get:
      summary: Get validation errors for a decision revision
      operationId: getDecisionRevisionErrors
      description: Retrieves the validation errors for a decision revision and also its sub-decisions.
      tags:
        - Decision Revisions
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier of the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: filter
          description: The criteria for filtering the decision revision validation errors. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(stepId, '410d5536-453d-48f4-b53b-206a3eadc58f')
        - name: sortBy
          description: The criteria for sorting the decision validation errors. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: decisionName:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted. The default is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.validation.error+json
            default: application/vnd.sas.decision.validation.error+json
          example: application/vnd.sas.decision.validation.error+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionValidationErrorsCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionValidationErrorsDecisionRevisionFlow"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionValidationErrorsCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionValidationErrorsDecisionRevisionFlow"
        "404":
          description: No decision revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/errorMarkers":
    get:
      tags:
        - Decision Revisions
      summary: Get decision revision error markers
      description: Returns a collection of error markers for a decision revision scoring test.
      operationId: getDecisionRevisionErrorMarkers
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the decision revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: executionId
          in: query
          description: The identifier for the score execution.
          schema:
            type: string
          example: 497f6eca-6276-4993-bfeb-53cbbbba6f08
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionErrorMarkerCollection"
              examples:
                default:
                  $ref: "#/components/examples/errorMarkersForDecision"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionErrorMarkerCollection"
              examples:
                default:
                  $ref: "#/components/examples/errorMarkersForDecision"
        "404":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/flows/{decisionId}/revisions/{revisionId}/decisionComponentsWithTags":
    get:
      tags:
        - Decision Revisions
      summary: Retrieve components in the decision based on tags
      description: Returns a collection of decision components based on if they do or do not have certain tags.
      operationId: getDecisionComponentsWithTags
      parameters:
        - name: decisionId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier of the revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: tags
          in: query
          required: true
          description: A list of comma-separated tags for which to search. Surround each tag with double quotation marks.
          schema:
            type: string
          example: '"tag_name1","tag_name2"'
        - name: includeSubDecisions
          in: query
          required: false
          description: A Boolean to indicate whether to include a sub-decision's components in the search.
          schema:
            type: boolean
            default: true
          example: true
        - name: negateTagSearch
          in: query
          required: false
          description: A Boolean to indicate whether the search based on tags should be negated. This makes the search look for all components that do NOT have the specified tags.
          schema:
            type: boolean
            default: false
          example: false
        - name: Accept-Item
          in: header
          description: Used for selecting the desired item representation.
          schema:
            type: string
          example: application/vnd.sas.decision.tag.merge.component+json
      responses:
        "200":
          description: A collection of decision components was found.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/tagMergeDecisionComponentCollection"
              examples:
                application/vnd.sas.decision.tag.merge.component+json:
                  $ref: "#/components/examples/decisionComponentsWithTags"
            application/json:
              schema:
                $ref: "#/components/schemas/tagMergeDecisionComponentCollection"
              examples:
                application/vnd.sas.decision.tag.merge.component+json:
                  $ref: "#/components/examples/decisionComponentsWithTags"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          description: No decision revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /segmentationTrees:
    get:
      operationId: getSegmentationTrees
      tags:
        - Segmentation Trees
      summary: Get a list of all segmentation trees
      description: Returns a resource collection of all segmentation trees.
      parameters:
        - name: filter
          description: >
            The criteria for filtering the segmentation trees. See [Filtering

            in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).


            The following properties support filtering:


            * createdBy

            * modifiedBy

            * creationTimeStamp

            * modifiedTimeStamp

            * id

            * name

            * description

            * majorRevision

            * minorRevision

            * signature.name

            * signature.description

            * signature.dataType

            * signature.length

            * signature.direction
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: >
            The criteria for sorting the segmentation trees. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).

            The following properties support sorting:

            * createdBy * modifiedBy * creationTimeStamp * modifiedTimeStamp * id * name * description * majorRevision * minorRevision
          in: query
          schema:
            type: string
            format: sort-criteria
            default: creationTimeStamp:descending
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index for the first item on a page. The index is 0-based.
          schema:
            type: integer
            default: 0
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return on this page of results. The actual number of returned items might be less if the collection has been exhausted.
          schema:
            type: integer
            default: 10
          example: 500
        - name: parentFolderUri
          in: query
          description: The folder in which the target segmentation trees are located.
          required: false
          schema:
            type: string
            format: /folders/folders/{parentFolderId}
          example: /folders/folders/@public
        - name: Accept-Item
          description: The desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.segmentation.tree+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision.segmentation.tree+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/segmentationTreeCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTrees"
                application/vnd.sas.decision.segmentation.tree+json:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTrees"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTrees"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/segmentationTreeCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTrees"
                application/vnd.sas.decision.segmentation.tree+json:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTrees"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTrees"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "406":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: The request was not acceptable. An invalid media type was specified for the `Accept-Item` header value.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notAcceptable"
    post:
      summary: Create a segmentation tree
      operationId: createSegmentationTree
      description: Creates a new segmentation tree based on the specified content.
      tags:
        - Segmentation Trees
      parameters:
        - name: parentFolderUri
          in: query
          description: The folder in which the new segmentation tree is placed.
          required: false
          schema:
            type: string
            format: /folders/folders/{parentFolderId}
          example: /folders/folders/@public
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the segmentation tree revision from which the new segmentation tree is being created. This property enables you to trace the lineage of a segmentation tree.
          schema:
            type: string
            format: /decisions/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}
          example: /decisions/segmentationTrees/ef613bb5-d855-4227-97ac-9e9bfefe3e4a/revisions/ba14828c-b4b6-4a3a-9246-f51dd16ffcba
      requestBody:
        content:
          application/vnd.sas.decision.segmentation.tree+json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
          application/json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
        description: The details to create a segmentation tree.
        required: true
      responses:
        "201":
          description: The segmentation tree was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/segmentationTrees/094078e7-278a-4719-a704-6e5e65af29ee
            ETag:
              description: The entity tag for the segmentation tree.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.segmentation.tree+json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
            application/json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/segmentationTrees/{segmentationTreeId}":
    get:
      summary: Get segmentation tree content
      description: Retrieves the contents of a segmentation tree.
      operationId: getSegmentationTree
      tags:
        - Segmentation Trees
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the segmentation tree.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.segmentation.tree+json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTree"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTree"
            application/json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
        "404":
          description: No segmentation tree exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      summary: Update a segmentation tree
      description: Updates the segmentation tree.
      operationId: updateSegmentationTree
      tags:
        - Segmentation Trees
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: If-Match
          in: header
          required: true
          description: The ETag value for when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
      requestBody:
        content:
          application/vnd.sas.decision.segmentation.tree+json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
          application/json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
        description: The segmentation tree content to use in the update.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the segmentation tree.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.segmentation.tree+json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
            application/json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTree"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          description: No segmentation tree exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match` precondition.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    delete:
      summary: Delete a segmentation tree
      operationId: deleteSegmentationTree
      tags:
        - Segmentation Trees
      description: Deletes the specified segmentation tree.
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "204":
          description: The segmentation tree was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/segmentationTrees/{segmentationTreeId}/code":
    get:
      summary: Get the segmentation tree code
      operationId: getSegmentationTreeCode
      description: Retrieves the DS2 package code, which can then be used to execute the segmentation tree.
      tags:
        - Segmentation Trees
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: codeTarget
          in: query
          schema:
            type: string
            enum:
              - microAnalyticService
              - others
          example: microAnalyticService
          description: >
            The type of platform or scenario in which the generated code is used.

            The following are code targets:

              * `microAnalyticService` - Use this target type when the generated DS2
            is going to be run on SAS Micro Analytic Service.
              * `others` - Use this target type in all other cases.
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfSegmentationTree"
        "404":
          description: No segmentation tree code exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/segmentationTrees/{segmentationTreeId}/decisionStepCode":
    get:
      summary: Get the segmentation tree decision step code
      description: Returns the step code for the specified segmentation tree.
      tags:
        - Segmentation Trees
      operationId: getSegmentationTreeDecisionStepCode
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfSegmentationTree"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfSegmentationTree"
        "404":
          description: No segmentation tree exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/segmentationTrees/{segmentationTreeId}/revisions":
    get:
      summary: Get all revisions for a segmentation tree
      description: Retrieves a list of all revisions that exist for a segmentation tree.
      operationId: getSegmentationTreeRevisions
      tags:
        - Segmentation Tree Revisions
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: filter
          description: >
            The criteria for filtering the segmentation tree revisions. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).

            The following properties support filtering:

              * createdBy
              * modifiedBy
              * creationTimeStamp
              * modifiedTimeStamp
              * id
              * name
              * description
              * majorRevision
              * minorRevision
              * signature.name
              * signature.description
              * signature.dataType
              * signature.length
              * signature.direction
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: >
            The criteria for sorting the segmentation tree revisions. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).

            The following properties support sorting:

              * createdBy
              * modifiedBy
              * creationTimeStamp
              * modifiedTimeStamp
              * id
              * name
              * description
              * majorRevision
              * minorRevision
          in: query
          schema:
            type: string
            format: sort-criteria
            default: creationTimeStamp:descending
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index for the first item on a page. The index is 0-based. The default value is '0'.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return on this page of results. The actual number of returned items might be less if the collection has been exhausted. The default value is '10'.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          description: The desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.segmentation.tree+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision.segmentation.tree+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/segmentationTreeCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTreeRevisions"
                application/vnd.sas.decision.segmentation.tree+json:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevisions"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTreeRevisions"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/segmentationTreeCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTreeRevisions"
                application/vnd.sas.decision.segmentation.tree+json:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevisions"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTreeRevisions"
        "404":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: No segmentation tree exists at the requested path.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    post:
      summary: Create a segmentation tree revision
      operationId: createSegmentationTreeRevision
      tags:
        - Segmentation Tree Revisions
      description: Creates a new revision for the segmentation tree.
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for a segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionType
          in: query
          description: This value determines how the server generates the major or minor revision numbers. Valid values are 'major' or 'minor'. If 'major' is specified, the next available major revision number is initiated. For example, if the segmentation tree has revisions 1.0, 1.1, 1.2, 2.0, 2.1, when you create a new major revision, the result is 3.0. If 'minor' is specified, the next available minor revision number is reserved based on the existing revisions. The default value is 'minor', if not specified.
          schema:
            type: string
            enum:
              - major
              - minor
            default: minor
          example: major
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the segmentation tree revision from which the new segmentation tree is created. This property enables you to trace the lineage of a segmentation tree.
          schema:
            type: string
            format: /decisions/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}
          example: /decisions/segmentationTrees/ef613bb5-d855-4227-97ac-9e9bfefe3e4a/revisions/ba14828c-b4b6-4a3a-9246-f51dd16ffcba
      requestBody:
        content:
          application/vnd.sas.decision.segmentation.tree+json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
          application/json:
            schema:
              $ref: "#/components/schemas/segmentationTree"
            examples:
              With a Variable Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableNode"
              With a Boolean Expression Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithBooleanExpressionNode"
              With a Matrix Node:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithMatrixNode"
              With a Variable Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction"
              With a Code Assignment Outcome:
                $ref: "#/components/examples/createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction"
        required: true
      responses:
        "201":
          description: A revision of the segmentation tree was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/segmentationTrees/094078e7-278a-4719-a704-6e5e65af29ee/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
            ETag:
              description: The entity tag for the segmentation tree revision.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.segmentation.tree+json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevision"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          description: No segmentation tree exists at the requested path.
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}":
    get:
      summary: Get content for a segmentation tree revision
      description: Retrieves the content for the specified segmentation tree revision.
      operationId: getSegmentationTreeRevision
      tags:
        - Segmentation Tree Revisions
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the segmentation tree revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the segmentation tree revision.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.segmentation.tree+json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevision"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfSegmentationTreeRevision"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTreeRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/segmentationTree"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfSegmentationTreeRevision"
        "404":
          description: No segmentation tree revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    delete:
      summary: Delete a locked segmentation tree revision
      operationId: deleteSegmentationTreeRevision
      tags:
        - Segmentation Tree Revisions
      description: Deletes the specified locked segmentation tree revision.
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the segmentation tree revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "204":
          description: The segmentation tree revision was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}/code":
    get:
      summary: Get code for a segmentation tree revision
      description: Retrieves the DS2 package code, which can be used to execute the segmentation tree revision.
      operationId: getSegmentationTreeRevisionCode
      tags:
        - Segmentation Tree Revisions
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the segmentation tree revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
        - name: codeTarget
          in: query
          schema:
            type: string
            enum:
              - microAnalyticService
              - others
          example: microAnalyticService
          description: >
            The type of platform or scenario in which the generated code is used.

            The following are code targets:

              * `microAnalyticService` - Use this type when the generated DS2 is going
            to be run on SAS Micro Analytic Service.
              * `others` - Use this target type in all other cases.
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            text/vnd.sas.source.ds2:
              schema:
                type: string
                format: ds2
              examples:
                default:
                  $ref: "#/components/examples/ds2CodeOfSegmentationTree"
        "404":
          description: No code for the segmentation tree revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}/decisionStepCode":
    get:
      summary: Get the decision step code for a segmentation tree revision
      description: Returns the step code for the specified segmentation tree revision.
      tags:
        - Segmentation Tree Revisions
      operationId: getSegmentationTreeRevisionDecisionStepCode
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the segmentation tree revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfSegmentationTreeRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfSegmentationTreeRevision"
        "404":
          description: No segmentation tree exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/segmentationTrees/{segmentationTreeId}/revisions/{revisionId}/checkOuts":
    get:
      summary: Get a list of all checkouts for a segmentation tree revision
      description: >
        Returns the complete list of checkouts for a segmentation tree revision.


        Note: This endpoint does not support paging.
      operationId: getAllSegmentationTreeCheckouts
      tags:
        - Segmentation Tree Revisions
      parameters:
        - name: segmentationTreeId
          in: path
          required: true
          description: The identifier for the segmentation tree.
          schema:
            type: string
          example: 094078e7-278a-4719-a704-6e5e65af29ee
        - name: revisionId
          in: path
          required: true
          description: The identifier for the segmentation tree revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTrees"
            application/json:
              schema:
                $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfSegmentationTrees"
        "404":
          description: No segmentation tree revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /segmentationTrees/terms:
    get:
      summary: Get terms by name in all segmentation trees
      operationId: getSegmentationTreeTerms
      description: Gets the terms by name in all segmentation trees.
      tags:
        - Segmentation Trees
      parameters:
        - name: name
          required: true
          description: The name of the term by which to search.
          in: query
          schema:
            type: string
          example: myTermName
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollection"
            application/json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollection"
  /codeFiles:
    get:
      tags:
        - Code Files
      summary: Get a collection of code files
      description: Returns a collection of code files based on the specified pagination, filtering, and sorting options. The items in the collection, depend on the `Accept-Item` header.
      operationId: getCodeFiles
      parameters:
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.code.file+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision.code.file+json
        - name: start
          description: The index of the first code file to return.
          in: query
          schema:
            type: integer
            format: int64
            default: 0
          example: 100
        - name: limit
          description: The maximum number of code files to return.
          in: query
          schema:
            type: integer
            format: int32
            default: 20
          example: 500
        - name: filter
          in: query
          description: The criteria for filtering the code files. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          in: query
          description: The criteria for sorting the code files. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/codeFileCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFiles"
                application/vnd.sas.decision.code.file+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFiles"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFiles"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/codeFileCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFiles"
                application/vnd.sas.decision.code.file+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFiles"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFiles"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
    post:
      tags:
        - Code Files
      summary: Create a code file
      description: Creates a new code file based on the representation in the request body.
      operationId: createCodeFile
      parameters:
        - name: parentFolderUri
          in: query
          description: The folder where the target code file is located.
          required: false
          schema:
            type: string
            format: /folders/folders/{parentFolderId}
          example: /folders/folders/@public
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the code file revision from which the new code file is created. This property enables you to trace the lineage of a code file. The valid format for this parameter is '/decisions/codeFiles/${codeFileId}/revisions/${revisionId}'
          schema:
            type: string
            format: /decisions/codeFiles/{codeFileId}/revisions/{revisionId}
          example: /decisions/codeFiles/094078e7-278a-4719-a704-6e5e65af29ee/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.decision.code.file+json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
          application/json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
        description: The details of the code file that needs to be created.
        required: true
      responses:
        "201":
          description: A code file was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Location:
              description: The URL of the code file.
              schema:
                type: string
              example: /decisions/codeFiles/981ac81f-ad95-46ae-a101-6846683364c5
            ETag:
              description: The entity tag for the code file.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/codeFiles/{codeFileId}":
    get:
      tags:
        - Code Files
      summary: Get a code file
      description: Returns the representation of the specified code file.
      operationId: getCodeFile
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFile"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      tags:
        - Code Files
      summary: Update a code file
      description: Updates a code file based on the representation in the request body. Only the name and description of a code file can be updated with this operation.
      operationId: updateCodeFile
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the decision.
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: If-Match
          in: header
          required: true
          description: The `ETag` value from when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
      requestBody:
        content:
          application/vnd.sas.decision.code.file+json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
          application/json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
        description: The unique identifier for the code file.
        required: true
      responses:
        "200":
          description: The code file was updated.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFile"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include a `If-Match` precondition.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    delete:
      tags:
        - Code Files
      summary: Delete a code file
      description: Deletes the specified code file.
      operationId: deleteCodeFile
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      responses:
        "204":
          description: The code file was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/codeFiles/{codeFileId}#summary":
    get:
      deprecated: true
      tags:
        - Code Files
      summary: Get the summary for a code file
      description: Returns the summary representation of the specified code file. This is deprecated. Use endpoint `/codeFiles/{codeFileId}` with `Accept` header as `application/vnd.sas.summary+json`.
      operationId: getCodeFileSummary
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFile"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/codeFiles/{codeFileId}#revisionSummary":
    get:
      deprecated: true
      tags:
        - Code Files
      summary: Get the decisioning summary for a code file
      description: Returns the decisioning summary representation of the specified code file. This is deprecated. Use endpoint `/codeFiles/{codeFileId}` with `Accept` header as `application/vnd.sas.dcm.summary+json`.
      operationId: getCodeFileDCMSummary
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFile"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/codeFiles/{codeFileId}/mappedCode":
    post:
      tags:
        - Code Files
      summary: Get the mapped code for a code file
      description: Returns the code to be able to run the code file based on the provided data and mapping information in the request.
      operationId: getMappedCodeCodeFile
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the code file.
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionCodeFile"
          application/json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionCodeFile"
        description: The information for `scoreDefinitionId` and hints.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionCodeFile"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/codeFiles/{codeFileId}/decisionStepCode":
    get:
      tags:
        - Code Files
      summary: Get the decision step code for a code file
      description: Returns the decision step code for the specified code file.
      operationId: getCodeFileDecisionStepCode
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the code file.
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionCodeFile"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/codeFiles/{codeFileId}/dependencies":
    get:
      summary: Get direct dependent objects
      operationId: getCodeFileDependencies
      description: Retrieves the URIs of the direct dependent objects of the code file.
      tags:
        - Code Files
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the code file.
          schema:
            type: string
          example: bae692cc-8df0-42ed-ad5b-e7caf1122278
        - name: Accept
          in: header
          description: Used for selecting the desired representation.
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.transfer.dependencies+json
            default: application/vnd.sas.transfer.dependencies+json
            example: application/vnd.sas.transfer.dependencies+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.transfer.dependencies+json:
              schema:
                $ref: "#/components/schemas/directDependentObjects"
              examples:
                default:
                  $ref: "#/components/examples/directCodeFileDependentObjects"
            application/json:
              schema:
                $ref: "#/components/schemas/directDependentObjects"
              examples:
                default:
                  $ref: "#/components/examples/directCodeFileDependentObjects"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /codeFileTerms:
    get:
      summary: Get terms by name in all code files
      operationId: getCodeFileTerms
      description: Gets terms by name in all code files.
      tags:
        - Code Files
      parameters:
        - name: filter
          description: The name of the term to search by.
          in: query
          schema:
            type: string
          example: myTermName
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollectionOfCodeFiles"
            application/json:
              schema:
                $ref: "#/components/schemas/termSummaryCollection"
              examples:
                default:
                  $ref: "#/components/examples/termSummaryCollectionOfCodeFiles"
  "/codeFiles/{codeFileId}/revisions":
    get:
      tags:
        - Code File Revisions
      summary: Get a collection of revisions of a code file
      description: Returns a collection of code file revisions based on the specified pagination, filtering, and sorting options. The items in the collection, depend on the `Accept-Item` header.
      operationId: getCodeFileRevisions
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: Accept-Item
          description: Used for selecting the desired item representation.
          in: header
          schema:
            type: string
            format: media-type
            enum:
              - application/vnd.sas.decision.code.file+json
              - application/vnd.sas.summary+json
              - application/vnd.sas.dcm.summary+json
            default: application/vnd.sas.summary+json
          example: application/vnd.sas.decision.code.file+json
        - name: start
          description: The index of the first code file to return.
          in: query
          schema:
            type: integer
            format: int64
            default: 0
          example: 100
        - name: limit
          description: The maximum number of code files to return.
          in: query
          schema:
            type: integer
            format: int32
            default: 20
          example: 500
        - name: filter
          in: query
          description: The criteria for filtering the code files. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          in: query
          description: The criteria for sorting the code files. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/codeFileCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFileRevisions"
                application/vnd.sas.decision.code.file+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevisions"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFileRevisions"
            application/json:
              schema:
                anyOf:
                  - $ref: "#/components/schemas/resourceSummaryCollection"
                  - $ref: "#/components/schemas/codeFileCollection"
                  - $ref: "#/components/schemas/revisionSummaryCollection"
              examples:
                application/vnd.sas.summary+json:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFileRevisions"
                application/vnd.sas.decision.code.file+json:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevisions"
                application/vnd.sas.dcm.summary+json:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFileRevisions"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
    post:
      tags:
        - Code File Revisions
      summary: Create a code file revision
      description: Creates a new code file revision based on the representation in the request body.
      operationId: createCodeFileRevision
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionType
          in: query
          required: false
          description: Valid values are `major` or `minor`. This value determines how the server generates the `major` and `minor` numbers. If a `major` number is provided, the next available major version number is started. For example, if the code file has revisions 1.0, 1.1, 1.2, 2.0, and 2.1, creating a new major revision results in 3.0. If a `minor` number is provided, then the next available minor revision number is reserved based on the existing revisions. For example, if the existing revisions have `major` and `minor` numbers of 1.1, 1.2, 1.3, 2.1, 2.2, and a user requests a new minor revision, then 2.3 is assigned. This parameter defaults to `minor` if not supplied.
          schema:
            type: string
            enum:
              - major
              - minor
          example: major
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the code file revision from which the new code file revision is created. This property enables you to trace the lineage of a code file. The valid format for this parameter is '/decisions/codeFiles/${codeFileId}/revisions/${revisionId}'
          schema:
            type: string
            format: /decisions/codeFiles/{codeFileId}/revisions/{revisionId}
          example: /decisions/codeFiles/981ac81f-ad95-46ae-a101-6846683364c5/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.decision.code.file+json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
          application/vnd.sas.decision.code.file.with.code+json:
            schema:
              $ref: "#/components/schemas/codeFileWithCode"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFileWithCode"
          application/json:
            schema:
              $ref: "#/components/schemas/codeFile"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFile"
        description: The details of the code file revision that needs to be created.
        required: true
      responses:
        "201":
          description: A code file revision was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Location:
              description: The URL of the code file revision.
              schema:
                type: string
              example: /decisions/codeFiles/981ac81f-ad95-46ae-a101-6846683364c5/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
            ETag:
              description: The entity tag for the code file revision.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file revision was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevision"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/codeFiles/{codeFileId}/revisions#withCode":
    post:
      deprecated: true
      tags:
        - Code File Revisions
      summary: Create a code file revision with code
      description: Creates a new code file revision based on the representation in the request body. This is deprecated. Please use endpoint `/codeFiles/{codeFileId}/revisions` with `Content-Type` header as `application/vnd.sas.decision.code.file.with.code+json`.
      operationId: createCodeFileRevisionWithCode
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionType
          in: query
          required: false
          description: Valid values are `major` or `minor`. This value determines how the server generates the `major` and `minor` numbers. If a `major` number is provided, the next available major version number is started. For example, if the code file has revisions 1.0, 1.1, 1.2, 2.0, and 2.1, creating a new major revision results in 3.0. If a `minor` number is provided, then the next available minor revision number is reserved based on the existing revisions. For example, if the existing revisions have `major` and `minor` numbers of 1.1, 1.2, 1.3, 2.1, 2.2, and a user requests a new minor revision, then 2.3 is assigned. This parameter defaults to `minor` if not supplied.
          schema:
            type: string
            enum:
              - major
              - minor
          example: major
        - name: fromRevisionUri
          in: query
          description: This value specifies the URI of the code file revision from which the new code file revision is created. This property enables you to trace the lineage of a code file. The valid format for this parameter is '/decisions/codeFiles/${codeFileId}/revisions/${revisionId}'
          schema:
            type: string
            format: /decisions/codeFiles/{codeFileId}/revisions/{revisionId}
          example: /decisions/codeFiles/981ac81f-ad95-46ae-a101-6846683364c5/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.decision.code.file.with.code+json:
            schema:
              $ref: "#/components/schemas/codeFileWithCode"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionCodeFileWithCode"
        description: The details of the code file revision that needs to be created.
        required: true
      responses:
        "201":
          description: A code file revision was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Location:
              description: The URL of the code file revision.
              schema:
                type: string
              example: /decisions/codeFiles/981ac81f-ad95-46ae-a101-6846683364c5/revisions/cd942f3c-60a0-4b16-9184-4cb8921fb0eb
            ETag:
              description: The entity tag for the code file revision.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in `EEE, dd MMM yyyy HH:mm:ss GMT` format when the code file revision was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevision"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/codeFiles/{codeFileId}/revisions/{revisionId}":
    get:
      tags:
        - Code File Revisions
      summary: Get a code file revision
      description: Returns the representation of the specified code file revision.
      operationId: getCodeFileRevision
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          description: The unique identifier for the code file revision.
          in: path
          required: true
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file revision.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file revision was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.code.file+json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevision"
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFileRevision"
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFileRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/codeFile"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionCodeFileRevision"
        "404":
          description: No code file revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    delete:
      tags:
        - Code File Revisions
      summary: Delete a code file revision
      description: Deletes the specified code file revision.
      operationId: deleteCodeFileRevision
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          description: The unique identifier for the code file revision.
          in: path
          required: true
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "204":
          description: The code file revision was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/codeFiles/{codeFileId}/revisions/{revisionId}#summary":
    get:
      deprecated: true
      tags:
        - Code File Revisions
      summary: Get the summary for a code file revision
      description: Returns the summary representation of the specified code file revision. This is deprecated. Please use endpoint `/codeFiles/{codeFileId}/revisions/{revisionId}` with `Accept` header `application/vnd.sas.summary+json`.
      operationId: getCodeFileRevisionSummary
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          description: The unique identifier for the code file revision.
          in: path
          required: true
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file revision.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file revision was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.summary+json:
              schema:
                $ref: "#/components/schemas/summary"
              examples:
                default:
                  $ref: "#/components/examples/resourceSummaryOfDecisionCodeFileRevision"
        "404":
          description: No code file revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/codeFiles/{codeFileId}/revisions/{revisionId}#revisionSummary":
    get:
      deprecated: true
      tags:
        - Code File Revisions
      summary: Get the decisioning summary for a code file revision
      description: Returns the decisioning summary representation of the specified code file revision. This is deprecated. Please use endpoint `/codeFiles/{codeFileId}/revisions/{revisionId}` with `Accept` header as `application/vnd.sas.dcm.summary+json`.
      operationId: getCodeFileRevisionDCMSummary
      parameters:
        - name: codeFileId
          description: The unique identifier for the code file.
          in: path
          required: true
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          description: The unique identifier for the code file revision.
          in: path
          required: true
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the code file revision.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the code file revision was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.dcm.summary+json:
              schema:
                $ref: "#/components/schemas/revisionSummary"
              examples:
                default:
                  $ref: "#/components/examples/revisionSummaryOfDecisionCodeFileRevision"
        "404":
          description: No code file revision exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  "/codeFiles/{codeFileId}/revisions/{revisionId}/mappedCode":
    post:
      tags:
        - Code File Revisions
      summary: Get the mapped code of a code file revision
      description: Returns the code to be able to run the code file based on the provided data and mapping information in the request.
      operationId: getMappedCodeRevisionCodeFile
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the code file.
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          in: path
          required: true
          description: The identifier for the code file revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      requestBody:
        content:
          application/vnd.sas.score.code.generation.request+json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionCodeFile"
          application/json:
            schema:
              $ref: "#/components/schemas/scoreCodeGenerationRequest"
            examples:
              default:
                $ref: "#/components/examples/scoreCodeGenerationRequestForDecisionCodeFile"
        description: The information for `scoreDefinitionId` and hints.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.score.mapped.code+json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionCodeFile"
            application/json:
              schema:
                $ref: "#/components/schemas/mappedCode"
              examples:
                default:
                  $ref: "#/components/examples/mappedCodeOfDecisionCodeFile"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/codeFiles/{codeFileId}/revisions/{revisionId}/decisionStepCode":
    get:
      tags:
        - Code File Revisions
      summary: Get the decision step code for a code file revision
      description: Returns the decision step code for the specified code file revision.
      operationId: getCodeFileRevisionDecisionStepCode
      parameters:
        - name: codeFileId
          in: path
          required: true
          description: The identifier for the code file.
          schema:
            type: string
          example: 981ac81f-ad95-46ae-a101-6846683364c5
        - name: revisionId
          in: path
          required: true
          description: The identifier for the code file revision.
          schema:
            type: string
          example: cd942f3c-60a0-4b16-9184-4cb8921fb0eb
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionCodeFileRevision"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionCodeFileRevision"
        "404":
          description: No code file exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /decisionNodeTypes:
    get:
      operationId: getDecisionNodeTypes
      tags:
        - Decision Node Types
      summary: Get a list of all decision node types
      description: Returns a resource collection of all decision node types.
      parameters:
        - name: filter
          description: The criteria for filtering the decision node types. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: The criteria for sorting the decision node types. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted. The default limit is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          in: header
          description: If provided, this should be an alternative media type that the service recognizes. If the media type is not one that the service can provide, a 406 response is returned.
          schema:
            type: string
          example: application/vnd.sas.decision.node.type+json
        - name: Accept-Language
          in: header
          description: If provided, the service attempts to retrieve the localized names for the given locale from the localization service. The names fetched are based on each node's l10nKey parameter.
          schema:
            type: string
          example: zh_CN
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeCollection"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypes"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeCollection"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypes"
        "406":
          description: The request was not acceptable. An invalid media type was specified for the `Accept-Item` header value.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notAcceptable"
    post:
      summary: Create a decision node type
      operationId: createDecisionNodeType
      description: Creates a new decision node type based on the provided content.
      parameters:
        - name: Accept-Language
          in: header
          description: If provided, the service attempts to retrieve the localized name for the given locale from the localization service. The names fetched are based on this node's l10nKey parameter.
          schema:
            type: string
          example: zh_CN
      tags:
        - Decision Node Types
      requestBody:
        content:
          application/vnd.sas.decision.node.type+json:
            schema:
              $ref: "#/components/schemas/decisionNodeType"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeRest"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionNodeType"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeRest"
        description: The representation for `DecisionNodeType` to create a decision node type.
        required: true
      responses:
        "201":
          description: The decision node type was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/decisionNodeTypes/8fdb696e-e9e3-43ef-a162-25b4d45faaee
          content:
            application/vnd.sas.decision.node.type+json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
  "/decisionNodeTypes/{nodeTypeId}":
    get:
      summary: Get decision node type content
      description: Retrieves the contents of a decision node type.
      operationId: getDecisionNodeType
      tags:
        - Decision Node Types
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
        - name: Accept-Language
          in: header
          description: If provided, the service attempts to retrieve localized name for the given locale from the localization service. The names fetched are based on this node's l10nKey parameter.
          schema:
            type: string
          example: zh_CN
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.node.type+json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
        "404":
          description: No decision node type exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      summary: Update a decision node type
      description: Updates the decision node type.
      operationId: updateDecisionNodeType
      tags:
        - Decision Node Types
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
        - name: If-Match
          in: header
          required: true
          description: The `ETag` value from when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
        - name: Accept-Language
          in: header
          description: If provided, the service attempts to retrieve localized name for the given locale from the localization service. The names fetched are based on this node's l10nKey parameter.
          schema:
            type: string
          example: zh_CN
      requestBody:
        content:
          application/vnd.sas.decision.node.type+json:
            schema:
              $ref: "#/components/schemas/decisionNodeType"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeRest"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionNodeType"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeRest"
        description: The decision node type content to use in the update.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.node.type+json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeType"
              examples:
                default:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeType"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "404":
          description: No decision node type exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match`.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    delete:
      summary: Delete a decision node type
      operationId: deleteDecisionNodeType
      tags:
        - Decision Node Types
      description: Deletes the specified decision node type.
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
      responses:
        "204":
          description: The decision node type was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  "/decisionNodeTypes/{nodeTypeId}/content":
    post:
      summary: Add decision node type content to a decision node type
      operationId: createDecisionNodeTypeContent
      description: Creates a new decision node type content associated with a decision node type based on the provided content.
      tags:
        - Decision Node Types
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
      requestBody:
        content:
          application/vnd.sas.decision.node.type.content+json:
            schema:
              $ref: "#/components/schemas/decisionNodeTypeContent"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentRest"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionNodeTypeContent"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentRest"
        description: DecisionNodeTypeContent representation to create a decision node type content.
        required: true
      responses:
        "201":
          description: The decision node type was created.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/decisionNodeTypes/8fdb696e-e9e3-43ef-a162-25b4d45faaee
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.node.type.content+json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match`.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    get:
      summary: Get decision node type content
      operationId: getDecisionNodeTypeContent
      description: Retrieves the decision node type content, which can then be used to represent the decision node type when the containing decision is executed.
      tags:
        - Decision Node Types
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            ETag:
              description: The entity tag for the decision flow.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.node.type.content+json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
        "404":
          description: No decision node type code exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      summary: Update a decision node type content
      operationId: updateDecisionNodeTypeContent
      description: Updates a decision node type content associated with a decision node type based on the provided content.
      tags:
        - Decision Node Types
      parameters:
        - name: nodeTypeId
          in: path
          required: true
          description: The identifier for the decision node type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
        - name: If-Match
          in: header
          required: true
          description: The `ETag` value from when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
      requestBody:
        content:
          application/vnd.sas.decision.node.type.content+json:
            schema:
              $ref: "#/components/schemas/decisionNodeTypeContent"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentRest"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionNodeTypeContent"
            examples:
              Static:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentStatic"
              Rest:
                $ref: "#/components/examples/createOrUpdateDecisionNodeTypeContentRest"
        description: DecisionNodeTypeContent representation to update a pre-existing decision node type content.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the decision node type content.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the decision node type content was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.node.type.content+json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
        "201":
          description: The decision node type content was updated.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/decisionNodeTypes/8fdb696e-e9e3-43ef-a162-25b4d45faaee
          content:
            application/vnd.sas.decision.node.type.content+json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionNodeTypeContent"
              examples:
                Static:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentStatic"
                Rest:
                  $ref: "#/components/examples/fullDetailsOfDecisionNodeTypeContentRest"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match`.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
  "/decisionNodeTypes/{nodeTypeId}/decisionStepCode":
    get:
      tags:
        - Decision Node Types
      summary: Get decision node type decision step code (static decision node types only)
      description: Returns the decision step code for the specified decision node type of type static.
      operationId: getDecisionNodeTypeDecisionStepCode
      parameters:
        - name: nodeTypeId
          description: The unique identifier for the decision node type.
          in: path
          required: true
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
        - name: codeTarget
          description: The target for where the DS2 code is deployed.
          in: query
          schema:
            type: string
            enum:
              - others
              - microAnalyticService
            default: others
          example: microAnalyticService
        - name: populateCode
          description: Indicates whether to populate DS2 code in the response.
          in: query
          schema:
            type: boolean
            default: false
          example: false
        - name: variableAssignmentTrace
          description: Determines whether variable assignment trace logging is added to the generated DS2 code.
          in: query
          schema:
            type: boolean
            default: false
          example: false
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the decision node type.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the decision node type was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.step.code+json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionNodeType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionStepCode"
              examples:
                default:
                  $ref: "#/components/examples/decisionStepCodeOfDecisionNodeType"
        "404":
          description: No decision node type exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
  /flowTypes:
    get:
      tags:
        - Decision Types
      summary: Get the list of decision types
      description: Returns the collection of decision types.
      operationId: getDecisionTypes
      parameters:
        - name: filter
          description: The criteria for filtering the decision types. See [Filtering in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#filtering).
          in: query
          schema:
            type: string
            format: filter-criteria
          example: gt(modifiedTimeStamp, '2021-05-03T15:38:45.654Z')
        - name: sortBy
          description: The criteria for sorting the decision types. See [Sorting in REST APIs](https://developer.sas.com/rest-apis/decisions/docs/getting-started/usage-notes#sorting).
          in: query
          schema:
            type: string
            format: sort-criteria
          example: modifiedTimeStamp:descending
        - name: start
          in: query
          description: The starting index of the first item in a page. The index is 0-based. The default is 0.
          schema:
            type: integer
          example: 100
        - name: limit
          in: query
          description: The maximum number of items to return in this page of results. The actual number of returned items might be less if the collection has been exhausted. The default limit is 10.
          schema:
            type: integer
          example: 500
        - name: Accept-Item
          in: header
          description: If provided, this should be an alternative media type that the service recognizes. If the media type is not one that the service can provide, a 406 response is returned.
          schema:
            type: string
          example: application/vnd.sas.decision.type+json
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.collection+json:
              schema:
                $ref: "#/components/schemas/decisionTypeCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionTypeCollection"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionTypeCollection"
              examples:
                default:
                  $ref: "#/components/examples/decisionTypeCollection"
        "406":
          description: The request was not acceptable. An invalid media type was specified for the `Accept-Item` header value.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notAcceptable"
    post:
      tags:
        - Decision Types
      summary: Create a decision type
      description: Creates the contents of a new decision type.
      operationId: createDecisionType
      requestBody:
        content:
          application/vnd.sas.decision.type+json:
            schema:
              $ref: "#/components/schemas/decisionType"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionType"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionType"
            examples:
              static:
                $ref: "#/components/examples/createOrUpdateDecisionType"
        description: Representation of an existing decision type with updates.
        required: true
      responses:
        "201":
          description: The decision type content was updated.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/decisionNodeTypes/8fdb696e-e9e3-43ef-a162-25b4d45faaee
            ETag:
              description: The entity tag for the decision type.
              schema:
                type: string
              example: '"kknyjgku"'
          content:
            application/vnd.sas.decision.type+json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match`.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
  "/flowTypes/{flowTypeId}":
    get:
      tags:
        - Decision Types
      summary: Get a decision type by ID
      description: Returns the contents of a decision type with a given ID.
      operationId: getDecisionType
      parameters:
        - name: flowTypeId
          description: The unique identifier for the decision type.
          in: path
          required: true
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the decision type.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the decision type was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.type+json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
        "404":
          description: No decision node type exists at the requested path.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/notFound"
    put:
      tags:
        - Decision Types
      summary: Update a decision type by ID
      description: Updates the contents of a decision type with a given ID.
      operationId: updateDecisionType
      parameters:
        - name: flowTypeId
          in: path
          required: true
          description: The identifier for the decision type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
        - name: If-Match
          in: header
          required: true
          description: The `ETag` value from when the originating object was retrieved.
          schema:
            type: string
          example: '"kknyjgku"'
      requestBody:
        content:
          application/vnd.sas.decision.type+json:
            schema:
              $ref: "#/components/schemas/decisionType"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionType"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionType"
            examples:
              default:
                $ref: "#/components/examples/createOrUpdateDecisionType"
        description: The representation of an existing decision type with updates.
        required: true
      responses:
        "200":
          description: The request succeeded.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            ETag:
              description: The entity tag for the decision type.
              schema:
                type: string
              example: '"kknyjgku"'
            Last-Modified:
              description: The timestamp in the format `EEE, dd MMM yyyy HH:mm:ss GMT` for when the decision type content was last modified.
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
          content:
            application/vnd.sas.decision.type+json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
        "201":
          description: The decision type content was updated.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
            Last-Modified:
              schema:
                type: string
              example: Thu, 06 May 2021 21:37:00 GMT
            Location:
              schema:
                type: string
              example: /decisions/decisionTypes/8fdb696e-e9e3-43ef-a162-25b4d45faaee
          content:
            application/vnd.sas.decision.node.type.content+json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
            application/json:
              schema:
                $ref: "#/components/schemas/decisionType"
              examples:
                default:
                  $ref: "#/components/examples/decisionType"
        "400":
          description: The request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
        "412":
          description: The `If-Match` request header did not match the resource's entity tag.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionFailed"
        "428":
          description: The request headers did not include an `If-Match`.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/preConditionRequired"
    delete:
      summary: Delete a decision type
      operationId: deleteDecisionType
      tags:
        - Decision Types
      description: Deletes the specified decision type.
      parameters:
        - name: flowTypeId
          in: path
          required: true
          description: The identifier for the decision type.
          schema:
            type: string
          example: 8fdb696e-e9e3-43ef-a162-25b4d45faaee
      responses:
        "204":
          description: The decision type was deleted.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
  /validations/expressionValidations:
    post:
      tags:
        - Validations
      summary: Validate a DS2 expression
      description: Validates a DS2 expression.
      operationId: validateCreateExpression
      requestBody:
        content:
          application/vnd.sas.decision.expression.validation.request+json:
            schema:
              $ref: "#/components/schemas/decisionExpressionValidationRequest"
            examples:
              Valid Expression:
                $ref: "#/components/examples/validateValidExpression"
              Invalid Expression:
                $ref: "#/components/examples/validateInvalidExpression"
          application/json:
            schema:
              $ref: "#/components/schemas/decisionExpressionValidationRequest"
            examples:
              Valid Expression:
                $ref: "#/components/examples/validateValidExpression"
              Invalid Expression:
                $ref: "#/components/examples/validateInvalidExpression"
        description: Representation of a DS2 expression to validate with optional signature.
        required: true
      responses:
        "200":
          description: The body of the request was valid. The expression was successfully validated as valid or invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.validation+json:
              schema:
                $ref: "#/components/schemas/expressionValidationResponse"
              examples:
                Valid Expression:
                  $ref: "#/components/examples/validateValidExpressionResponse"
                Invalid Expression:
                  $ref: "#/components/examples/validateInvalidExpressionResponse"
            application/json:
              schema:
                $ref: "#/components/schemas/expressionValidationResponse"
              examples:
                default:
                  $ref: "#/components/examples/validateValidExpressionResponse"
                Invalid Expression:
                  $ref: "#/components/examples/validateInvalidExpressionResponse"
        "400":
          description: The body of the validation request was invalid.
          headers:
            Sas-Service-Response-Flag:
              $ref: "#/components/headers/Sas-Service-Response-Flag"
          content:
            application/vnd.sas.error+json:
              schema:
                $ref: "#/components/schemas/error2"
              examples:
                default:
                  $ref: "#/components/examples/badRequest"
components:
  headers:
    Sas-Service-Response-Flag:
      description: Indicates whether the response is coming from a SAS service.
      schema:
        type: boolean
      example: true
  schemas:
    resourceSummaryCollection:
      title: Resource Summary Collection
      description: One page of the objects as resource summary representations, with optional links to the first, previous, next, and last page of the list.
      type: object
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/summary"
              description: An array, which consists of one page of the objects as summary resources.
    revisionSummaryCollection:
      title: Revision Summary Collection
      description: One page of the objects as revision summary representations, with optional links to the first, previous, next, and last page of the list.
      type: object
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/revisionSummary"
              description: An array, which consists of one page of the objects as summary resources.
    decisionCollection:
      title: Decision Collection
      description: A paginated list of decision representations, with optional links to first, prev, next, and last page of the collection.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/decision"
              description: An array, which consists of one page of decision resources.
    decisionNodeReferenceObjectCollection:
      title: Decision Node Reference Object Collection
      description: A collection of decision node reference objects.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          properties:
            items:
              type: array
              description: The actual results of a query.
              items:
                $ref: "#/components/schemas/decisionNodeReferenceObject"
    externalArtifact:
      title: External Artifact
      description: Contains the details about the external artifact.
      properties:
        name:
          type: string
          description: An assigned name of the artifact.
        artifactType:
          type: string
          description: The type of artifact.
        artifactProperties:
          type: object
          description: A map of keys to strings that are relevant for this artifact type. For example, for an analytic store, this map has a key for the `astoreUri`.
        parentURI:
          type: string
          description: The URI of the object, such as the model or business rule set, that uses this artifact.
        version:
          type: integer
          description: This media type's schema version number. This representation is version 1.
    externalArtifactsCollection:
      title: External Artifacts Collection
      description: A collection of external artifact representations.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          properties:
            items:
              type: array
              description: The actual results of a query.
              items:
                $ref: "#/components/schemas/externalArtifact"
    codeFileCollection:
      title: Code File Collection
      description: One page of decision representations, with optional links to first, prev, next, and last page of the collection.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/codeFile"
              description: An array, which consists of one page of decision resources.
    segmentationTreeCollection:
      title: Segmentation Tree Collection
      description: A paginated list of segmentation tree representations, with optional links to the first, previous, next, and last page of the collection.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/segmentationTree"
              description: An array, which consists of one page of segmentation tree resources.
    decisionVariablesCollection:
      title: Decision Variable Collection
      description: A collection of variables for a decision.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          properties:
            items:
              type: array
              description: The actual results of a query.
              items:
                $ref: "#/components/schemas/term"
    decisionValidationErrorsCollection:
      title: Decision Validation Errors Collection
      description: A collection of validation errors for a decision.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          properties:
            items:
              type: array
              description: The actual results of a query.
              items:
                $ref: "#/components/schemas/validationError"
    decisionNodeTypeCollection:
      title: Decision Node Types Collection
      description: A paginated list of decision node type representations, with optional links to first, prev, next, and last page of the collection.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/decisionNodeType"
              description: An array, which consists of one page of decision node type resources.
    termSummaryCollection:
      title: Term Usage Summary Collection
      description: An un-paginated list of term usage summaries.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/termUsageSummary"
              description: An array, which consists of term usage summaries.
    decisionErrorMarkerCollection:
      title: Decision Error Marker Collection
      description: A collection of error markers for a decision scoring test.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/errorMarker"
              description: An array, which consists of decision scoring error markers.
    tagMergeDecisionComponentCollection:
      title: Tag Merge Decision Component Collection
      description: An un-paginated list of tag merge decision components.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/tagMergeDecisionComponent"
              description: An array, which consists of tag merge decision components.
    directDependentObjects:
      title: Direct Dependent Objects
      description: The object contains an unpaginated list of URIs of the direct dependents of this resource. A resource can be a decision or a code file.
      required:
        - uri
        - name
        - dependentUris
      properties:
        uri:
          type: string
          description: The URI of the resource.
        name:
          type: string
          description: The name of the resource.
        dependencies:
          type: array
          description: A list of URIs for each direct dependency of this resource.
          items:
            type: string
    decisionTypeCollection:
      title: Decision Type Collection
      description: A paginated list of decision type representations, with optional links to first, prev, next, and last page of the collection.
      allOf:
        - $ref: "#/components/schemas/baseCollection2"
        - type: object
          required:
            - items
          properties:
            items:
              type: array
              items:
                $ref: "#/components/schemas/decisionType"
              description: An array, which consists of one page of decision type resources.
    expressionError:
      title: CAS Error from Expression Validation
      description: The error reported from CAS while validating the expression.
      properties:
        errorCode:
          type: integer
          description: The error code that is returned from CAS when validating.
        message:
          type: string
          description: The error message that is returned from CAS when validating.
        httpStatusCode:
          type: integer
          description: The HTTP status code that is returned from CAS when validating.
        version:
          type: integer
          description: The version that is returned from CAS when validating.
    expressionValidationResponse:
      title: Decision Expression Validation Response
      description: The response from validating the expression.
      required:
        - valid
      properties:
        valid:
          type: boolean
          description: True if the expression is valid, and false if the expression is not valid.
        error:
          $ref: "#/components/schemas/expressionError"
    unboundScoreCodeGenerationRequest:
      title: Unbound Code Generation Request
      description: Request containing hints and mappings to generate Mapped Code not bound to a score definition.
      properties:
        mappings:
          type: array
          description: Array of mappings between Score Object variables and the table the code will be executed against.
          items:
            $ref: "#/components/schemas/termMapping"
        hints:
          type: object
          description: Hints for generating the code. Hints are specific to the type of object which the code is being requested for.
          additionalProperties:
            type: string
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 1.
    decisionNodeType:
      title: Decision Node Type
      description: Contains information needed to extend the decision flow with a new node type
      required:
        - name
        - hasInputs
        - hasOutputs
        - type
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object.
        name:
          type: string
          description: The name of the DecisionNodeType used by the infrastructure to indentify this node type (no spaces or special characters).
        description:
          type: string
          description: The description of the DecisionNodeType.
        hasProperties:
          type: boolean
          description: indicates whether or not the DecisionNodeType should be present a properties pane when included in a decision flow
        hasInputs:
          type: boolean
          description: indicates that the DecisionNodeType has inputs which should be mapped to decision flow or datagrid variables
        hasOutputs:
          type: boolean
          description: indicates that the DecisionNodeType has outputs which should be mapped to decision flow or datagrid variables
        inputDatagridMappable:
          type: boolean
          description: indicates that the DecisionNodeType's inputs may be mapped to datagrid extensions
        outputDatagridMappable:
          type: boolean
          description: indicates that the DecisionNodeType's outputs may be mapped to datagrid extensions
        inputDecisionTermMappable:
          type: boolean
          description: indicates that the DecisionNodeType's inputs may be mapped to decision variables
        outputDecisionTermMappable:
          type: boolean
          description: indicates that the DecisionNodeType's outputs may be mapped to decision variables
        independentMappings:
          type: boolean
          description: indicates whether same-named inputs/outputs may be mapped independently
        themeId:
          type: string
          description: indicating a standard theme which will result in a unique icon and color.  The available themes are DNT_THEME1, DNT_THEME2, DNT_THEME3, DNT_THEME4, and DNT_THEME5
        style:
          type: object
          description: determine how the node type will be presented in the application UI. This is mutually exclusive with themeId.
          properties:
            icon:
              type: object
              description: determine the icon used to represent the node type.
              required:
                - id
                - ref
              properties:
                id:
                  type: string
                  description: the unique identifier for the Honeycomb icon.
                ref:
                  type: string
                  description: the unique reference for the Honeycomb icon.
            color:
              type: integer
              description: the color a node of this type will appear on a decision flow diagram. Each number represents a different color, with 13 different colors to choose from.
              minimum: 1
              maximum: 13
        type:
          type: string
          description: the type for this DecisionNodeType
          enum:
            - static
            - rest
        l10nKey:
          type: string
          description: the key that can be used to access the localized name from the localization service.
        createdBy:
          type: string
          readOnly: true
          description: The user who created the object used in decision step.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the object used in the decision step was created.
        modifiedBy:
          type: string
          readOnly: true
          description: The user ID of the authenticated user who last updated the object used in the decision step.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the object used in the decision step was last modified.
        links:
          type: array
          readOnly: true
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 2.
    codeFile:
      title: Code File
      description: >
        Wrapper to file resource, which contains the signature of the code. This represents application/vnd.sas.decision.code.file media type (version 9).
      required:
        - type
        - fileUri
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object.
        name:
          type: string
          description: The code file name.
        description:
          type: string
          description: The code file description.
        createdBy:
          type: string
          readOnly: true
          description: The user who created the code file.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the code file was created.
        modifiedBy:
          type: string
          description: The user ID of the authenticated user who last updated the code file.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The date and time that the code file was last modified.
        majorRevision:
          type: integer
          readOnly: true
          description: Major version number of the revision being viewed of the code file. This value is assigned by the service, the user only has control on whether the major number or minor number is incremented when creating a new revision. This is a derived field that is generated on POST.
        minorRevision:
          type: integer
          readOnly: true
          description: Minor version number of the current revision of the code file. This value is assigned by the service, the user only has control on whether the major number or minor number is incremented when creating a new revision. This is a derived field that is generated on POST.
        checkout:
          type: boolean
          readOnly: true
          description: >
            Flag indicating that the code file is the user's working copy of another code file.
        locked:
          type: boolean
          readOnly: true
          description: Flag which indicates whether the content of the revision being viewed is locked or editable.
        type:
          type: string
          format: enumeration
          enum:
            - decisionCustomContextDS2CodeFile
            - decisionDS2CodeFile
            - decisionSQLCodeFile
            - decisionPythonFile
          description: Type of the code.
        status:
          type: string
          format: enumeration
          readOnly: true
          enum:
            - valid
            - error
          description: Status of the code content.
        errorCode:
          type: integer
          readOnly: true
          description: Error code when parsing code content.
        errorMessage:
          type: string
          readOnly: true
          description: Error message when parsing code content.
        signature:
          type: array
          description: Array of signature terms.
          items:
            $ref: "#/components/schemas/codeFileSignatureTerm"
        folderType:
          type: string
          readOnly: true
          description: Indicates the type of folder where the code file is located.
        sourceRevisionUri:
          type: string
          readOnly: true
          description: The URI of the code file revision this code file is being created from.
        copyTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The time stamp when the code file revision was copied.
        links:
          type: array
          readOnly: true
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        fileUri:
          type: string
          description: The URI of the file resource, which contains code.
        testCustomContextUri:
          type: string
          description: The URI of a Custom Context DS2 code file that provides a custom context to this code file. Normally, this code file's custom context is provided by the decision that utilizes it. For syntax validation and testing purpose, you can specify a testing-only custom context.
        version:
          type: integer
          readOnly: true
          description: >
            This media type's schema version number. This representation is version 9.
    decisionType:
      title: Decision Type
      description: >
        A decision type modifies the available functionality that can be used to build a decision. 

        Currently it controls the available decision node types that can be used to build a decision.
      properties:
        id:
          type: string
          description: The unique identifier of the decision type.
        name:
          type: string
          description: The name of the decision type.
        l10nKey:
          type: string
          description: The key for looking up the decision type name in the user's locale.
        denyDecisionNodeTypes:
          type: array
          description: The decision node types from the core types to not make available in the decision. The available core types are "branch", "crossBranchLink", "dataQuery", "decision", "ds2CodeFile", "microAnalyticModule", "model", "pythonCodeFile", "recordContacts", "ruleSet" and "treatmentGroup".
          items:
            type: string
        allowDecisionNodeTypes:
          type: array
          description: The decision node types not in the core types to make available in the decision.
          items:
            type: string
        createdBy:
          type: string
          description: The user who created the decision type.
        creationTimeStamp:
          type: string
          format: date-time
          description: The date and time that the decision type was created.
        modifiedBy:
          type: string
          description: The user ID of the authenticated user who last updated the decision type.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The date and time that the decision type was last modified.
        links:
          type: array
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: This media type's schema version number.
    decisionStepCode:
      title: Decision Step Code
      description: Contains the structure of code that is needed to generate the decision code.
      properties:
        id:
          type: string
          description: The system-assigned unique ID for this object.
        name:
          type: string
          description: The name of the object used in decision step.
        description:
          type: string
          description: The description of the object used in decision step.
        createdBy:
          type: string
          description: The user who created the object used in decision step.
        creationTimeStamp:
          type: string
          format: date-time
          description: The date and time that the object used in the decision step was created.
        modifiedBy:
          type: string
          description: The user ID of the authenticated user who last updated the object used in the decision step.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The date and time that the object used in the decision step was last modified.
        code:
          type: string
          description: The code of the object used in the decision step.
        type:
          type: string
          description: The object type of the object used in the decision step.
        signature:
          type: array
          description: Signature variables of the object used in the decision step.
          items:
            $ref: "#/components/schemas/decisionStepCodeSignatureTerm"
        links:
          type: array
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: This media type's schema version number. This representation is version 1.
    mappedCode:
      title: Mapped Code
      description: Executable code generated by a score object using a score definition and input data. This represents application/vnd.sas.score.mapped.code media type (version 1).
      required:
        - code
        - codeType
        - outputTableName
        - outputLibraryName
      properties:
        code:
          type: string
          description: The executable code generated by a score object.
        codeType:
          type: string
          format: media-type
          description: The type of code.
        outputTableName:
          type: string
          description: The name of the table that is generated when the code is executed.
        outputLibraryName:
          type: string
          description: The name of the library where the table is generated when the code is executed.
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 2.
    analysisCode:
      title: Analysis Code
      description: Analysis Code generated by a Score Object using Score Execution. This represents application/vnd.sas.score.analysis.code media type (version 1).
      required:
        - code
        - codeType
        - outputTableName
        - outputLibraryName
      properties:
        code:
          type: string
          description: Executable code generated by a Score Object.
        codeType:
          type: string
          format: media-type
          description: Type of the code.
        outputTableName:
          type: string
          description: Name of the table that will be generated when the generated code is executed.
        outputLibraryName:
          type: string
          description: Name of the library where the table will be generated when the code is executed.
        version:
          type: integer
          description: This media type's schema version number. This representation is version 1.
    validationError:
      title: Decision Validation Error
      description: Represents a decision validation error.
      required:
        - decisionId
        - decisionRevisionId
        - decisionName
      type: object
      properties:
        decisionId:
          type: string
          readOnly: true
          description: Identifier for the decision which have the validation error.
        decisionRevisionId:
          type: string
          readOnly: true
          description: Identifier for the decision which have the validation error.
        decisionName:
          type: string
          readOnly: true
          description: Name of the decision which have the validation error.
        itemType:
          type: string
          readOnly: true
          format: enumeration
          enum:
            - mapping
            - variable
            - application/vnd.sas.decision.step.branch
            - application/vnd.sas.decision.step.condition
            - application/vnd.sas.decision.step.custom.object
            - application/vnd.sas.decision.step.model
            - application/vnd.sas.decision.step.node.link
            - application/vnd.sas.decision.step.record.contact
            - application/vnd.sas.decision.step.ruleset
          description: >
            Type of the item on which error is reported:
              * `mapping                                          ` - Error in mapping.
              * `variable                                         ` - Error in variable.
              * `application/vnd.sas.decision.step.branch         ` - Error in branch
            step.
              * `application/vnd.sas.decision.step.condition      ` - Error in condition
            step.
              * `application/vnd.sas.decision.step.custom.object  ` - Error in custom
            object step.
              * `application/vnd.sas.decision.step.model          ` - Error in model
            step.
              * `application/vnd.sas.decision.step.node.link      ` - Error in node
            link step.
              * `application/vnd.sas.decision.step.record.contact ` - Error in record
            contact step.
              * `application/vnd.sas.decision.step.ruleset        ` - Error in ruleset
            step.
        variableId:
          type: string
          readOnly: true
          description: Identifier for the decision variable which have the validation error. Valid when `itemType` is `variable`.
        variableName:
          type: string
          readOnly: true
          description: Name of the decision variable which have the validation error. Valid when `itemType` is `variable`.
        stepId:
          type: string
          readOnly: true
          description: Identifier for the decision step which have the validation error. Valid when `itemType` is related to step.
        stepName:
          type: string
          readOnly: true
          description: Name of the decision step which have the validation error. Valid when `itemType` is related to step.
        stepMappingId:
          type: string
          readOnly: true
          description: Identifier for the decision step mapping which have the validation error. Valid when `itemType` is `mapping`.
        stepMappingName:
          type: string
          readOnly: true
          description: Name of the decision step mapping which have the validation error. Valid when `itemType` is `mapping`.
        errorCode:
          type: integer
          enum:
            - 77021
            - 77022
            - 77023
            - 77024
            - 77025
          description: >
            Error code for this validation error:
              * `77021` - Signature is changed.
              * `77022` - Item is not activated.
              * `77023` - Error accessing an uri.
              * `77024` - Error in mapping.
              * `77025` - Error inside an object.
        errorMessage:
          type: string
          description: Error message for this validation error.
        statusCode:
          type: integer
          description: HTTP status code for this validation error. This is populated when the error is related to http call.
    revisionSummary:
      title: Revision Resource Summary
      description: The summarized representation of a decisioning revision resource.
      properties:
        id:
          type: string
          description: The unique identifier for the resource.
        name:
          type: string
          description: The name of the resource.
        description:
          type: string
          description: The description of the resource.
        createdBy:
          type: string
          description: The user who created the resource.
        creationTimeStamp:
          type: string
          format: date-time
          description: The timestamp in YYYY-MM-DDThh:mm:ss.sssZ format when the resource was created.
        modifiedBy:
          type: string
          description: The user who most recently modified the resource.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The timestamp in YYYY-MM-DDThh:mm:ss.sssZ format when the resource was last modified.
        majorRevision:
          type: integer
          description: Major version number of the revision being viewed of a resource.
        minorRevision:
          type: integer
          description: Minor version number of the current revision of a resource.
        locked:
          type: boolean
          description: Flag which indicates if the content being viewed is locked or editable.
        sourceRevisionUri:
          type: string
          description: The URI of a resource revision this resource is being created from.
        copyTimeStamp:
          type: string
          format: date-time
          description: The time stamp when the resource revision was copied.
        folderType:
          type: string
          description: Indicates the kind of folder where the resource is housed.
        properties:
          type: object
          description: Properties associated with the revision.
          additionalProperties:
            type: string
        links:
          type: array
          description: The links that apply to the resource.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: The version number of the resource. This representation is version 1.
    errorMarker:
      title: Decision Error Marker
      description: Represents where an error occurred during execution of a decision scoring test.
      type: object
      properties:
        stepId:
          type: string
          description: The ID of the decision step that caused the error.
        stepName:
          type: string
          description: The name of the decision step that caused the error.
        objectUri:
          type: string
          description: The URI of the object referenced by the decision step.
        errors:
          type: array
          description: List of decision step error messages.
          items:
            $ref: "#/components/schemas/errorMarkerMessage"
        warnings:
          type: array
          description: List of decision step warnings messages.
          items:
            $ref: "#/components/schemas/errorMarkerMessage"
        version:
          type: integer
          readOnly: true
          description: The version number of the domain representation. This representation is version 1.
    baseCollection2:
      title: Base Collection
      description: This is a base schema used to define paginated collections of resources. This base schema is extended by other schemas in APIs by adding an 'items' array property. These extensions define the application/vnd.sas.collection media type (version 2)
      properties:
        name:
          type: string
          description: The name of the collection.
        start:
          type: integer
          description: The zero-based index of the first item in the collection.
          format: int64
        limit:
          type: integer
          description: The number of items that were requested for the collection.
        count:
          type: integer
          description: If populated indicates the number of items in the collection.
          format: int64
        accept:
          type: string
          description: A space-delimited list of media types from which an `Accept` header may be constructed.
        links:
          type: array
          description: The links that apply to the collection.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: The version number of the collection representation. This representation is version 2.
    decisionNodeTypeContent:
      title: Decision Node Type Content
      description: Contains information needed to extend the decision flow with a new node type including the decision node type's signature and provision for acquiring decision step code for the associated decision node type.
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object.
        nodeTypeId:
          type: string
          description: The id of the decision node type associated with this decision node type content
        contentType:
          type: string
          description: The type of logic to be executed when the associated decision node type is included in a decision flow (DS2 is only support contentType as of now)
        staticContent:
          type: string
          description: The logic to be executed when a decision node type of type "static" is is executed.  If the decision node type is not of type "static" this property should be null
        restContent:
          type: object
          description: Information about the REST service that manages the content for the node type. If the decision node type is of type "static" this property should be null.
          required:
            - uri
            - objectTypeName
          properties:
            uri:
              type: string
              description: The base URI for the in the service for the node type. This URI will support creating new objects and listing existing objects.
            objectTypeName:
              type: string
              description: The name of the node type as registered with the SAS Types Service.
            editorAppId:
              type: string
              description: The identifier of the application entry point which should be used to open the objects managed by the REST service. This identifier should match the directive registered with the appRegistry service.
            versioned:
              type: boolean
              description: Indicates if objects of this type are versioned. If true, the REST service must support calls to uri/{uuid}/revisions/{revisionId}/decsionStepCode to retrieve information about an object for a specific versioned. It must also support uri/{uuid}/revisions to obtain the list of revisions and uri/{uuid}/revisions/{revisionId} to obtain a specific revision.
              default: false
        nodeTypeSignatureTerms:
          type: array
          description: Signature variables of the decision node type. Only required if type property is "static".
          items:
            $ref: "#/components/schemas/decisionStepCodeSignatureTerm"
        createdBy:
          type: string
          readOnly: true
          description: The user who created the object used in decision step.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the object used in the decision step was created.
        modifiedBy:
          type: string
          description: The user ID of the authenticated user who last updated the object used in the decision step.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the object used in the decision step was last modified.
        links:
          type: array
          readOnly: true
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 2.
    decisionExpressionValidationRequest:
      title: Decision Expression Validation Request
      description: Contains information about an expression to be validated. The expression may contain literals, terms, built in functions and custom functions.
      required:
        - expression
      properties:
        signature:
          type: array
          items:
            $ref: "#/components/schemas/term"
          description: An optional set of terms that may be used in the expression.
        expression:
          type: string
          description: The expression to be validated.
    analysisCodeGenerationRequest:
      title: Analysis Code Generation Request
      description: Request containing hints to generate Analysis Code using the Scoring Execution. This represents application/vnd.sas.dcm.score.analysis.code.generation.request media type (version 1).
      required:
        - analysisType
        - scoreExecutionId
      properties:
        scoreExecutionId:
          type: string
          description: Score execution id.
        analysisType:
          type: string
          description: Type of analysis that needs to be done.
        hints:
          type: object
          description: Hints for generating analysis code.
          additionalProperties:
            type: string
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 1.
    scoreCodeGenerationRequest:
      title: Score Code Generation Request
      description: Request containing hints to generate mapped code using the Scoring Definition by Score Object.
      required:
        - scoreDefinitionId
      properties:
        scoreDefinitionId:
          type: string
          description: The score definition ID that is used for generating mapped code.
        hints:
          type: object
          description: Hints for generating mapped code. The mapped code request is forwarded to the score object of the score definition. The score object should understand these hints.
          additionalProperties:
            type: string
        version:
          type: integer
          readOnly: true
          description: This media type's schema version number. This representation is version 2.
    termUsageSummary:
      title: Term Usage Summary
      description: A summary representation of a term and it's usage.
      required:
        - parentName
        - parentUri
        - name
        - dataType
        - direction
      type: object
      properties:
        parentName:
          type: string
          readOnly: true
          description: The name of the parent resource that contains the term.
        parentUri:
          type: string
          readOnly: true
          description: The uri of the parent resource that contains the term.
        name:
          type: string
          readOnly: true
          description: The name of the term.
        dataType:
          type: string
          readOnly: true
          description: The data type of the term.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - date
            - datetime
            - dataGrid
        direction:
          type: string
          readOnly: true
          description: >
            Declaration of how the term is to be used during execution. It indicates if the term should be used as input, output, both input and output, or none if the term is only used internally.
          format: enumeration
          enum:
            - input
            - output
            - inOut
            - none
    tagMergeDecisionComponent:
      title: Tag Merge Decision Component
      description: Represents an individual decision component to be included in a tag based merge.
      type: object
      properties:
        uri:
          type: string
          readOnly: true
          description: The uri of the decision component.
        name:
          type: string
          readOnly: true
          description: The name of the decision component.
        modifiedTimeStamp:
          type: string
          readOnly: true
          format: date-time
          description: The time stamp of when the latest version of the decision component was last modified.
        parentDecisions:
          type: array
          description: The list of the decisions this individual component is contained in, under the context of the decision being merged.
          items:
            $ref: "#/components/schemas/parentDecision"
        revisions:
          type: array
          description: The list of revisions of the decision component that are candidates to be included in the tag based merge.
          items:
            $ref: "#/components/schemas/revisionReference"
        version:
          type: integer
          readOnly: true
          description: >
            This media type's schema version number. This representation is version 1.
    codeFileWithCode:
      title: Code File
      description: >
        A code file that accepts its code as a property. This represents

        application/vnd.sas.decision.code.file.with.code media type (version 1).


        This variant of code file is useful for creating a code file revision without

        managing the creation of the underlying file resources used to store the code.
      required:
        - type
        - code
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object
        name:
          type: string
          description: The code file name
        description:
          type: string
          description: The code file description
        createdBy:
          type: string
          readOnly: true
          description: The user who created the code file.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the code file was created.
        modifiedBy:
          type: string
          description: The user ID of the authenticated user who last updated the code file.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The date and time that the code file was last modified.
        majorRevision:
          type: integer
          readOnly: true
          description: Major version number of the revision being viewed of the code file. This value is assigned by the service, the user only has control on whether the major number or minor number is incremented when creating a new revision. This is a derived field that is generated on POST.
        minorRevision:
          type: integer
          readOnly: true
          description: Minor version number of the current revision of the code file. This value is assigned by the service, the user only has control on whether the major number or minor number is incremented when creating a new revision. This is a derived field that is generated on POST.
        checkout:
          type: boolean
          readOnly: true
          description: >
            Flag indicating that the code file is the user's working copy of another code file.
        locked:
          type: boolean
          readOnly: true
          description: Flag which indicates whether the content of the revision being viewed is locked or editable.
        type:
          type: string
          format: enumeration
          enum:
            - decisionDS2CodeFile
            - decisionSQLCodeFile
            - decisionPythonFile
          description: Type of the code.
        status:
          type: string
          format: enumeration
          readOnly: true
          enum:
            - valid
            - error
          description: Status of the code content.
        errorCode:
          type: integer
          readOnly: true
          description: Error code when parsing code content.
        errorMessage:
          type: string
          readOnly: true
          description: Error message when parsing code content.
        signature:
          type: array
          description: Array of signature terms.
          items:
            $ref: "#/components/schemas/codeFileSignatureTerm"
        folderType:
          type: string
          readOnly: true
          description: Indicates the type of folder where the code file is located.
        sourceRevisionUri:
          type: string
          readOnly: true
          description: The URI of the code file revision this code file is being created from.
        copyTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The time stamp when the code file revision was copied.
        links:
          type: array
          readOnly: true
          description: Zero or more links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        code:
          type: string
          description: The code that defines the code file's behavior.
        version:
          type: integer
          readOnly: true
          description: >
            This media type's schema version number. This representation is version 1.
    decisionNodeReferenceObject:
      title: Decision Node Reference Object
      description: The representation of a rule set, model, treatment group, code file, or sub-decision used in a decision flow, including those used by sub-decisions.
      required:
        - id
        - name
        - type
        - activeVersionReference
        - referenceList
      properties:
        id:
          type: string
          readOnly: true
          description: The string ID for the decision node reference object.
        name:
          type: string
          description: The name of the decision node reference object.
        type:
          type: string
          description: The media type of the decision node reference object.
        versionId:
          type: string
          description: The string ID for the version of the decision node reference object.
        versionName:
          type: string
          description: The referenced object's version name.
        activeVersionReference:
          type: boolean
          description: Specifies whether decision node reference object is set to use the active version rather than a specific version.
        referenceList:
          type: array
          items:
            $ref: "#/components/schemas/referencingDecision"
          description: The decisions that reference the decision node reference object, including the parent decision and any sub-decisions.
    summary:
      title: Resource Summary
      type: object
      description: The summarized representation of a resource. Often used in collection responses when more specific details aren't needed.
      x-sas-media-type:
        name: application/vnd.sas.summary
        version: 2
      required:
        - id
        - links
        - version
      properties:
        id:
          type: string
          description: The unique identifier for the resource.
        name:
          type: string
          description: The name of the resource.
        type:
          type: string
          description: The type of the resource.
        description:
          type: string
          description: The description of the resource.
        typeDefName:
          type: string
          description: (version 2) The name of the type definition that describes the contents of this resource.
        iconUri:
          type: string
          description: (version 2) The URI of an icon assigned to this resource, overrides default icons for the type.
        createdBy:
          type: string
          description: The user who created the resource.
        creationTimeStamp:
          type: string
          format: date-time
          description: The timestamp in YYYY-MM-DDThh:mm:ss.sssZ format when the resource was created.
        modifiedBy:
          type: string
          description: The user who most recently modified the resource.
        modifiedTimeStamp:
          type: string
          format: date-time
          description: The timestamp in YYYY-MM-DDThh:mm:ss.sssZ format when the resource was last modified.
        links:
          type: array
          description: The links that apply to the resource.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: The version number of the resource. This representation is version 2.
    decision:
      title: Decision
      description: The representation of a decision.
      required:
        - name
        - signature
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The string ID for the decision.
        name:
          type: string
          description: The name for the decision.
        type:
          type: string
          description: The decision type.
        description:
          type: string
          description: The description for the decision.
        majorRevision:
          type: integer
          readOnly: true
          description: Major version number of the revision being viewed of the decision. This value is assigned by the service, the user has only control of whether the major number or minor number is incremented when creating a new revision.
        checkout:
          type: boolean
          readOnly: true
          description: >
            A flag that indicates whether the decision is a user's working copy of another decision.
        locked:
          type: boolean
          readOnly: true
          description: Flag that indicates whether the content being viewed is locked or editable.
        minorRevision:
          type: integer
          readOnly: true
          description: Minor version number of the current revision of the decision. This value is assigned by the service, the user has only control of whether the major number or minor number is incremented when creating a new revision.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp when the decision was created.
        createdBy:
          type: string
          readOnly: true
          description: The user ID who created the decision.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp when the decision properties was modified.
        modifiedBy:
          type: string
          readOnly: true
          description: The user ID who modified the decision.
        nodeCount:
          type: integer
          readOnly: true
          description: The total number of decision steps(nodes) in the decision flow.
        sourceRevisionUri:
          type: string
          readOnly: true
          description: The URI of the decision revision this decision is being created from.
        copyTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The time stamp when the decision revision was copied.
        flow:
          $ref: "#/components/schemas/flow"
        signature:
          type: array
          items:
            $ref: "#/components/schemas/term"
          description: The set of terms local to this decision with input and output behavior.
        subjectLevel:
          type: string
          description: Indicates the type of subject ID.
        subjectId:
          description: The reference for the term used to identify the subject.
          type: object
          required:
            - name
            - signature
          properties:
            id:
              type: string
              description: The id for the signature term.
            name:
              type: string
              description: Name of the term that is being referenced within the objects signature.
        folderType:
          type: string
          readOnly: true
          description: Indicates the type of folder where the decision is located.
        properties:
          type: object
          description: Properties associated with the decision.
          additionalProperties:
            type: string
        customContextUri:
          type: string
          description: The URI of a Custom Context DS2 code file that serves as the decision's custom context.
        customContextMicroAnalyticServiceUri:
          type: string
          description: The URI of a Custom Context DS2 code file that serves as the decision's custom context when it is published to a SAS Micro Analytic Service destination. If there is no distinction in functionality from other destinations, there is no need to provide an override.
        validatedBy:
          type: string
          readOnly: true
          description: The user ID who validated the decision.
        validationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp when the decision is validated.
        validationStatus:
          type: string
          format: enumeration
          enum:
            - none
            - complete
            - incomplete
          readOnly: true
          description: >
            Validation status:
              * `none` - Validation was not performed.
              * `complete` - Validation was completed.
              * `incomplete` - Validation could not be completed because some of the
            resources are not available.
        hasErrors:
          type: boolean
          readOnly: true
          description: Flag that indicates whether the decision has errors. This does not include errors in sub-decisions.
        hasErrorsInSubDecisions:
          type: boolean
          readOnly: true
          description: Flag that indicates whether any of sub-decisions within this decision have errors.
        links:
          type: array
          readOnly: true
          description: Links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          readOnly: true
          description: The version number of the domain representation. This representation is version 1.
    segmentationTree:
      title: Segmentation Tree
      description: The representation of a segmentation tree.
      required:
        - name
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The string ID for the segmentation tree.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp for when the segmentation tree was created.
        createdBy:
          type: string
          readOnly: true
          description: The ID of the user who created the segmentation tree.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp for when the segmentation tree properties were modified.
        modifiedBy:
          type: string
          readOnly: true
          description: The ID of the user who modified the segmentation tree.
        name:
          type: string
          description: The name for the segmentation tree.
          maxLength: 100
        description:
          type: string
          description: The description for the segmentation tree.
          maxLength: 1000
        majorRevision:
          type: integer
          readOnly: true
          description: The major version number of the current revision of the segmentation tree. This value is assigned by the service. The user only has control of whether the major number or minor number is incremented when creating a new revision.
        minorRevision:
          type: integer
          readOnly: true
          description: The minor version number of the current revision of the segmentation tree. This value is assigned by the service. The user only has control of whether the major number or minor number is incremented when creating a new revision.
        locked:
          type: boolean
          readOnly: true
          description: A flag that indicates whether the content that is being viewed is locked or editable.
        folderType:
          type: string
          readOnly: true
          description: The type of folder where the segmentation tree is located.
        checkout:
          type: boolean
          readOnly: true
          description: A flag that indicates whether the segmentation tree is a user's working copy of another segmentation tree.
        sourceRevisionUri:
          type: string
          readOnly: true
          description: The URI of the segmentation tree revision from which this segmentation tree is being created.
        revisionId:
          type: string
          readOnly: true
          description: The string ID for a segmentation tree revision. This string is available only if the operation that returns this object has to handle a revision.
        revisionUri:
          type: string
          readOnly: true
          description: The URI for a segmentation tree revision. This is available only if the operation that returns this object has to handle a revision.
        copyTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp for when the segmentation tree revision was copied.
        signature:
          type: array
          items:
            $ref: "#/components/schemas/signatureTerm"
          description: The set of terms that are local to this segmentation tree with input and output behavior.
        codeFiles:
          type: array
          items:
            anyOf:
              - $ref: "#/components/schemas/internalCodeFile"
          description: The code files that are associated with this segmentation tree.
        outcomes:
          type: array
          items:
            $ref: "#/components/schemas/outcome"
          description: The outcomes that are associated with this segmentation tree.
        matrices:
          type: array
          items:
            $ref: "#/components/schemas/matrix"
          description: The matrices that are associated with this segmentation tree.
        booleanExpressions:
          type: array
          items:
            $ref: "#/components/schemas/booleanExpression"
          description: The Boolean expressions that are associated with this segmentation tree.
        node:
          anyOf:
            - $ref: "#/components/schemas/variableNode"
            - $ref: "#/components/schemas/booleanExpressionNode"
            - $ref: "#/components/schemas/matrixNode"
          description: The root node that is associated with this segmentation tree.
        links:
          type: array
          readOnly: true
          description: Links to related resources or operations.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          readOnly: true
          description: The version number of the domain representation. This representation is version 1.
    term:
      title: Decision Condition Term
      description: Represents a term that is used for a condition comparison within a decision.
      required:
        - name
        - dataType
        - direction
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object
        name:
          type: string
          description: Name of the term that can be referenced. Term names must be unique within a rule set.
        description:
          type: string
          description: Description of the term
        defaultValue:
          type: object
          description: The initial value of the term. Interpretted as a DS2 expression, therefore must be valid DS2 code.
        length:
          type: integer
          description: Suggested length for use when generating code.
        createdBy:
          type: string
          readOnly: true
          description: The user who created the term.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the term was created.
        modifiedBy:
          type: string
          readOnly: true
          description: The user ID of the authenticated user who last updated the term.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The date and time that the term was last modified.
        dataType:
          type: string
          description: The type of data that the term is intended to be used with.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - date
            - datetime
            - dataGrid
        direction:
          type: string
          description: >
            Declaration of how the data is to be used during execution. It indicates if the data should be used as input, output, both input and output, or none if the term is only for internal rule set usage.
          format: enumeration
          enum:
            - input
            - output
            - inOut
            - none
        dataGridExtension:
          type: array
          items:
            $ref: "#/components/schemas/termExtension"
        generateDataGridColumns:
          type: boolean
          description: >
            Each row in a data grid variable normally contains metadata that defines the columns in the data grid and the data for each column.Depending on the data types and number of columns in the data grid, the metadata can increase the size of the data grid considerably. To exclude the metadata from each row in the data grid, populate this option as true as the application depends on the column definitions that you enter when you define the variable. Ensure that the column definition is correct for each column in the data grid variable. If the column definitions do not match the input data, the application cannot load the data.
        legacy:
          type: boolean
          description: the flag of legacy variable.
        dataGridMaxRowCount:
          type: integer
          description: Specifies the maximum number of rows that are allowed in each column of a data grid that is generated from table columns whose names follow the format "column_name[index]" where "column_name" is identical for all columns. If the input data contains more entries for a data grid column than the specified row count allows, the input data for that column is truncated during score execution.
    error2:
      title: Error
      type: object
      description: The representation of an error.
      x-sas-media-type:
        name: application/vnd.sas.error
        version: 2
      required:
        - httpStatusCode
        - version
      properties:
        message:
          type: string
          description: The message for the error.
        id:
          type: string
          description: The string ID for the error.
        errorCode:
          type: integer
          description: The numeric ID for the error.
        httpStatusCode:
          type: integer
          description: The HTTP status code for the error.
        details:
          type: array
          description: Messages that provide additional details about the cause of the error.
          items:
            type: string
        remediation:
          type: string
          description: A message that describes how to resolve the error.
        errors:
          type: array
          description: Any additional errors that occurred.
          items:
            $ref: "#/components/schemas/error2"
        links:
          type: array
          description: The links that apply to the error.
          items:
            $ref: "#/components/schemas/link"
        version:
          type: integer
          description: The version number of the error representation. This representation is version 2.
    api:
      title: API
      description: The list of links to top-level resources and operations available from the root of the API.
      x-sas-media-type:
        name: application/vnd.sas.api
        version: 1
      required:
        - version
        - links
      properties:
        version:
          type: integer
          description: The version number of the API representation. This is version 1.
          minimum: 1
        links:
          description: The API's top-level links.
          type: array
          items:
            $ref: "#/components/schemas/link"
    parentDecision:
      title: Tag Merge Component Parent Decision
      description: Represents the parent decision associated with the decision component
      type: object
      properties:
        name:
          type: string
          description: The name of the decision.
        uri:
          type: string
          description: The uri of the decision revision.
    termMapping:
      title: Mapping
      description: Assigning Input Data column to a variable of the generated Mapped Code of Score Object. This doesn't represent any top-level media type.
      required:
        - variableName
        - mappingType
      properties:
        variableName:
          type: string
          description: Name of the Score Object's variable.
        mappingType:
          description: The mapping type.
          type: string
          format: enumeration
          enum:
            - datasource
            - static
            - expected
        mappingValue:
          anyOf:
            - type: integer
            - type: number
            - type: array
            - type: boolean
            - type: object
            - type: string
          description: Value that is assigned to Score Object's variable. If the mappingType is dataSource then this should be column name of the Input Data. If the mappingType is static then this should be a constant value. If the mappingType is expected then this is the expected value of the output and it is always constant. Required if the mappingType is datasource.
    matrix:
      title: Segmentation Tree Matrix
      description: Two dimensional array with down and across variable values with their intersection outcomes.
      required:
        - name
        - downVariableName
        - downVariableValues
        - acrossVariableName
        - acrossVariableValues
        - outcomes
      type: object
      properties:
        name:
          type: string
          description: Name of the matrix. Unique within a segmentation tree.
          maxLength: 100
        description:
          type: string
          description: The description for this matrix.
          maxLength: 1000
        downVariableName:
          type: string
          description: Name of the down variable. Should exist in the segmentation tree signature.
        downVariableValueListId:
          type: string
          description: Value list id for different values used down the matrix.
          minLength: 36
          maxLength: 36
        downVariableValueListContentId:
          type: string
          description: Value list content id for different values used down the matrix.
          minLength: 36
          maxLength: 36
        downVariableValues:
          type: array
          minLength: 1
          items:
            anyOf:
              - type: integer
              - type: number
              - type: boolean
              - type: string
          description: Values for the down variable. Should be unique.
        acrossVariableName:
          type: integer
          description: Name of the across variable. Should exist in the segmentation tree signature.
        acrossVariableValueListId:
          type: string
          description: Value list id for different values used across the matrix.
          minLength: 36
          maxLength: 36
        acrossVariableValueListContentId:
          type: string
          description: Value list content id for different values used across the matrix.
          minLength: 36
          maxLength: 36
        acrossVariableValues:
          type: array
          minLength: 1
          items:
            anyOf:
              - type: integer
              - type: number
              - type: boolean
              - type: string
          description: Values for the across variable. Should be unique.
        outcomes:
          type: array
          minLength: 1
          items:
            type: array
            items:
              anyOf:
                - type: integer
                - type: number
                - type: boolean
                - type: string
          description: Outcomes of this matrix. Rows should match number of down variable values and columns in each row should match number of across variable values.
    booleanExpressionNode:
      title: Segmentation Tree Boolean Expression Node
      description: Node with a boolean expression.
      required:
        - type
        - booleanExpressionName
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The ID for the segmentation tree node.
        label:
          type: string
          maxLength: 100
          description: The label for the segmentation tree node.
        type:
          type: string
          description: Type of node being referenced within the segmentation tree.
          format: enumeration
          enum:
            - booleanExpression
        valueNodes:
          type: array
          items:
            $ref: "#/components/schemas/valueNode"
          description: List of value nodes. Value of the value node should be either true or false.
        booleanExpressionName:
          type: string
          description: Name of the boolean expression. Should exist in the segmentation tree signature.
          maxLength: 100
    booleanExpression:
      title: Segmentation Tree Boolean Expression
      description: Named boolean expression which evaluates to a boolean value.
      required:
        - name
        - expression
      type: object
      properties:
        name:
          type: string
          description: Name of the boolean expression. Unique within a segmentation tree.
        description:
          type: string
          description: The description for this boolean expression.
          maxLength: 1000
        expression:
          type: string
          maxLength: 1000
          description: Code which evaluates to a boolean value.
    outcome:
      title: Segmentation Tree Outcome
      description: Outcome contains actions to assign values to variables.
      required:
        - name
      type: object
      properties:
        name:
          type: string
          maxLength: 100
          description: Name of the outcome. Unique within segmentation tree.
        description:
          type: string
          description: The description for this outcome.
          maxLength: 1000
        actions:
          type: array
          items:
            anyOf:
              - $ref: "#/components/schemas/variableAssignmentOutcomeAction"
              - $ref: "#/components/schemas/codeAssignmentOutcomeAction"
          description: Outcome actions associated with this outcome.
    flow:
      title: Decision Flow
      description: The representation of a decision flow.
      required:
        - name
        - signature
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The string ID for the decision flow.
        creationTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp when the decision flow was created.
        createdBy:
          type: string
          readOnly: true
          description: The user ID who created the decision flow.
        modifiedTimeStamp:
          type: string
          format: date-time
          readOnly: true
          description: The timestamp when the decision flow properties was modified.
        modifiedBy:
          type: string
          readOnly: true
          description: The user ID who modified the decision flow.
        steps:
          type: array
          description: The sequence of rule sets, models, custom objects, branches, and conditions that represent the decision-making flow object.
          items:
            anyOf:
              - $ref: "#/components/schemas/decisionRuleSetStep"
              - $ref: "#/components/schemas/decisionModelStep"
              - $ref: "#/components/schemas/decisionCustomObjectStep"
              - $ref: "#/components/schemas/decisionRecordContactStep"
              - $ref: "#/components/schemas/decisionNodeLinkStep"
              - $ref: "#/components/schemas/decisionConditionStep"
              - $ref: "#/components/schemas/decisionBranchStep"
    variableNode:
      title: Segmentation Tree Variable Node
      description: Node with a variable.
      required:
        - type
        - variableName
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The ID for the segmentation tree node.
        label:
          type: string
          maxLength: 100
          description: The label for the segmentation tree node.
        type:
          type: string
          description: Type of node being referenced within the segmentation tree.
          format: enumeration
          enum:
            - variable
        valueNodes:
          type: array
          items:
            $ref: "#/components/schemas/valueNode"
          description: List of value nodes. Should be unique.
        variableName:
          type: string
          maxLength: 100
          description: Name of the variable. Should exist in the segmentation tree signature.
        valueListId:
          type: string
          maxLength: 36
          description: Id of a value list. Value nodes should be based in the values inside this value list. If not provided variable's value list will be used.
        valueListContentId:
          type: string
          maxLength: 36
          description: Id of a value list content. Value nodes should be based in the values inside this value list content.
    link:
      title: Link
      type: object
      description: A link to a related operation or resource.
      required:
        - rel
      properties:
        method:
          type: string
          description: The HTTP method for the link.
        rel:
          type: string
          description: The relationship of the link to the resource.
        uri:
          type: string
          description: The relative URI for the link.
        href:
          type: string
          description: The URL for the link.
        title:
          type: string
          description: The title for the link.
        type:
          type: string
          description: The media type or link type for the link.
        itemType:
          type: string
          description: If this is a link to a container, `itemType` is the media type or link type for the items in the container.
        responseType:
          type: string
          description: The media type or link type of the response body for a `PUT`, `POST`, or `PATCH` operation.
        responseItemType:
          type: string
          description: The media type or link type of the items in the response body for a `PUT`, `POST`, or `PATCH` operation.
    codeFileSignatureTerm:
      title: Code File Signature Term
      description: Represents the code file signature term.
      required:
        - name
        - dataType
        - direction
      properties:
        name:
          type: string
          description: The name of the code file signature term.
        dataType:
          type: string
          description: Data type of the code file signature term.
          enum:
            - string
            - decimal
            - integer
            - dataGrid
            - date
            - datetime
            - unknown
        direction:
          type: string
          description: Direction of the code file signature term.
          enum:
            - input
            - inOut
            - output
        length:
          type: integer
          description: Length of the signature term. Valid for string data type.
        dataGridExtension:
          type: array
          items:
            $ref: "#/components/schemas/codeFileSignatureTermDataGridExtension"
          description: Metadata information about data grid columns.
        generateDataGridColumns:
          type: boolean
          description: Each row in a data grid variable usally contains metadata that defines the columns in the data grid and the data for each column. Depending on the data types and number of columns in the data grid, the metadata can increase the size of the data grid considerably. To exclude the metadata from each row in the data grid, set this option to "true" because the application depends on the column definitions that you enter when you define the variable. Ensure that the column definition is correct for each column in the data grid variable. If the column definitions do not match the input data, the application cannot load the data.
    termExtension:
      title: Signature Term Extension
      description: Signature term extension is used to store the column information of a data grid variable.
      required:
        - name
        - dataType
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The system-assigned unique ID for this object.
        name:
          type: string
          description: The name of the term that can be referenced. Term names must be unique within a rule set.
        length:
          type: integer
          description: The suggested length for use when generating code.
        autoPopulate:
          type: boolean
          description: >
            When this flag value is set to true, the code that is generated by the application calls the appropriate data function to create the new column that you added to the metadata at runtime.
        dataType:
          type: string
          description: The type of data that the term is intended to be used with. Terms can be loosely typed with the 'any' type, this type is only assigned by the service when rules POST'ed with 'createVariables=true' and no type can be determined.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - date
            - datetime
    matrixNode:
      title: Segmentation Tree Matrix Node
      description: Segmentation tree node with a matrix.
      required:
        - type
        - variableName
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The ID for the segmentation tree node.
        label:
          type: string
          maxLength: 100
          description: The label for the segmentation tree node.
        type:
          type: string
          description: Type of node being referenced within the segmentation tree.
          format: enumeration
          enum:
            - matrix
        valueNodes:
          type: array
          items:
            $ref: "#/components/schemas/valueNode"
          description: List of value nodes.  Should be unique.
        matrixName:
          type: string
          maxLength: 100
          description: Name of the matrix. Should exist in the segmentation tree signature.
    decisionStepCodeSignatureTerm:
      title: Decision Step Code Signature Term
      description: Terms that are a part of the signature for the object that is used in a decision step.
      required:
        - name
        - dataType
        - direction
      properties:
        name:
          type: string
          description: The name of the object used in a decision step.
        dataType:
          type: string
          description: Data type of the term.
          enum:
            - string
            - decimal
            - integer
            - dataGrid
            - date
            - datetime
            - unknown
        direction:
          type: string
          description: Direction of the term.
        length:
          type: integer
          description: Length of the term.
        dataGridExtension:
          type: array
          items:
            $ref: "#/components/schemas/decisionStepCodeSignatureTermDataGridExtension"
          description: Metadata information about data grid columns.
    referencingDecision:
      title: Referencing Decision
      description: The representation of a decision, which may be the parent or a sub-decision, that references a specific decision node reference object.
      required:
        - id
        - name
        - versionId
      properties:
        id:
          type: string
          readOnly: true
          description: The string ID for the decision.
        name:
          type: string
          description: The name of the decision.
        versionId:
          type: string
          description: The string ID for the version of the decision.
    signatureTerm:
      title: Segmentation Tree Signature Term
      description: Represents a term that is used within a segmentation tree.
      required:
        - name
        - dataType
        - direction
      type: object
      properties:
        name:
          type: string
          maxLength: 100
          description: Name of the term that can be referenced. Term names must be unique within a segmentation tree.
        description:
          type: string
          maxLength: 1000
          description: Description of the term
        length:
          type: integer
          description: Suggested length for use when generating code.
        dataType:
          type: string
          description: The type of data that the term is intended to be used with.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - boolean
            - date
            - datetime
            - dataGrid
        direction:
          type: string
          description: >
            Declaration of how the data is to be used during execution. It indicates if the data should be used as input, output, both input and output, or none if the term is only for internal usage.
          format: enumeration
          enum:
            - input
            - output
            - inOut
            - none
        valueListId:
          type: string
          description: Value list id for different values and ranges that are used for comparing with the variable.
          maxLength: 36
        valueListContentId:
          type: string
          description: Value list content id for different values and ranges that are used for comparing with the variable.
          maxLength: 36
        defaultValue:
          oneOf:
            - type: string
            - type: number
            - type: integer
            - type: boolean
          description: The initial value of the term.
    errorMarkerMessage:
      title: Decision Error Marker Message
      description: Represents an error that occurred during execution of a decision scoring test
      type: object
      properties:
        errorLineNumber:
          type: integer
          format: int32
          description: The line number where the error occurred
        errorMessage:
          type: string
          description: The error message
    revisionReference:
      title: Tag Merge Component Revision Reference
      description: Represents the revision for the component that has the specified tags associated with it
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The revision id for the decision
        majorRevision:
          type: integer
          readOnly: true
          description: Major version number of the revision being viewed of the decision.
        minorRevision:
          type: integer
          readOnly: true
          description: Minor version number of the revision being viewed of the decision.
        tags:
          type: array
          readOnly: true
          description: List of tags associated with this revision.
          items:
            type: string
    internalCodeFile:
      title: Segmentation Tree Internal Code File
      description: Code file which is internal to the segmentation tree
      required:
        - type
        - name
        - code
      type: object
      properties:
        type:
          type: string
          description: Type of code file used in the segmentation tree.
          format: enumeration
          enum:
            - internal
        name:
          type: string
          description: Name of the code file. Unique within a segmentation tree.
          maxLength: 100
        description:
          type: string
          description: The description for this code file.
          maxLength: 1000
        code:
          type: string
          description: Code that needs to be executed to assign values to variables.
        sourceUri:
          type: string
          description: Uri of the code file from which the code is imported.
    decisionRecordContactStep:
      title: Decision Record Contact Step
      description: A record contact step within a decision.
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.record.contact
        recordContact:
          $ref: "#/components/schemas/recordContactStep"
    decisionBranchStep:
      title: Decision Branch Step
      description: Represents a branch decision flow step. A branch step contains a list of branchCases and a defaultCase. During the execution of a branch step each branchCases condition is evaluated in order. The decision flow will follow the first branchCases condition that evaluates as true. If a branchCases condition does not evaluate as true, then the defaultCase path for the branchStep is followed.
      required:
        - branchType
      type: object
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.branch
        name:
          type: string
          description: The logical name of this node for business user identification.
          maxLength: 100
        branchType:
          type: string
          format: enumeration
          description: >
            One of:

            * `range` - A branch step with branchType "range" contains branchCases that define a "range" condition for either a variable lower bound, a variable upper bound, or a variable range.

            * `equals` - A branch step with branchType "equals" contains branchCases that define "equals" conditions.  All conditions in an "equals" branch must use the "=" operator.  Several "equals" conditions can be "OR"ed.

            * `like` -  A branch step with branchType "like" contains branchCases that define "like" conditions.   All conditions in an "equals" branch must use the "like" operator.  Several "like" conditions can be "OR"ed.
        branchCases:
          type: array
          description: Specifies an array of branchCases.  At execution time each branchCase is evaluated in order.  The "onTrue" path of the first branchCase whose condition(s) evaluates true is followed.  If no branchCase's condition(s) evaluates true the defaultCase path is followed.
          items:
            $ref: "#/components/schemas/branchCase"
        defaultCase:
          $ref: "#/components/schemas/flow"
    decisionCustomObjectStep:
      title: Decision Custom Object Step
      description: A custom object step within a decision.
      type: object
      required:
        - type
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.custom.object
        mappingDataGridName:
          type: string
          description: Datagrid signature term name that is used by mapping. Valid only for customObject, ruleSet and model steps.
        customObject:
          $ref: "#/components/schemas/customObjectStep"
        mappings:
          type: array
          description: Variable mappings for the model or rule set being referenced. Required if type is set to 'application/vnd.sas.decision.step.model' or 'application/vnd.sas.decision.step.ruleset'.
          items:
            $ref: "#/components/schemas/decisionStepMapping"
    decisionModelStep:
      title: Decision Model Step
      description: A model step within a decision.
      type: object
      required:
        - type
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.model
        mappingDataGridName:
          type: string
          description: Datagrid signature term name that is used by mapping. Valid only for customObject, ruleSet and model steps.
        model:
          $ref: "#/components/schemas/modelStep"
        mappings:
          type: array
          description: Variable mappings for the model or rule set being referenced. Required if type is set to 'application/vnd.sas.decision.step.model' or 'application/vnd.sas.decision.step.ruleset'.
          items:
            $ref: "#/components/schemas/decisionStepMapping"
    variableAssignmentOutcomeAction:
      title: Segmentation Tree Variable Assignment Outcome Action
      description: Outcome action in which a variable is assigned a value
      required:
        - type
        - variableName
      type: object
      properties:
        type:
          type: string
          description: Type of outcome action being referenced within the segmentation tree outcome.
          format: enumeration
          enum:
            - variableAssignment
        variableName:
          type: string
          maxLength: 100
          description: Name of the variable for which a value need to be assigned. Should exist in the segmentation tree signature.
        valueType:
          type: string
          description: Type of the value.
          format: enumeration
          enum:
            - static
            - variable
        value:
          anyOf:
            - type: integer
            - type: number
            - type: boolean
            - type: string
          description: >
            Value that needs to be assigned to the specified variable. It has to be of type string if the valueType is variable.
    codeAssignmentOutcomeAction:
      title: Segmentation Tree Code Assignment Outcome Action
      description: Outcome action in which a specified code is executed to assign values to variables.
      required:
        - type
        - codeFileName
      type: object
      properties:
        type:
          type: string
          description: Type of outcome action being referenced within the segmentation tree outcome.
          format: enumeration
          enum:
            - codeAssignment
        codeFileName:
          type: string
          description: Name of the code file. Should exist in the segmentation tree.
          maxLength: 100
    valueNode:
      title: Segmentation Tree Value Node
      description: Node with a value.
      required:
        - value
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The ID for the segmentation tree node.
        label:
          type: string
          maxLength: 100
          description: The label for the segmentation tree node.
        value:
          description: Value to which variable is compared with.
          anyOf:
            - type: integer
            - type: number
            - type: boolean
            - type: string
        outcomeName:
          type: string
          maxLength: 100
          description: Name of the outcome. Should exist in segmnetation tree outcomes.
        variableAssignmentOutcomeActionOverrides:
          type: array
          items:
            $ref: "#/components/schemas/variableAssignmentOutcomeAction"
          description: Variable assignment outcome actions that are overridden in this value node.
        next:
          type: object
          anyOf:
            - $ref: "#/components/schemas/variableNode"
            - $ref: "#/components/schemas/booleanExpressionNode"
            - $ref: "#/components/schemas/matrixNode"
          description: Next node expression in the tree.
    decisionStepCodeSignatureTermDataGridExtension:
      title: Decision Step Code Signature Term DataGrid Extension
      description: Decision Step Code Signature Term DataGrid Extension is used to store the column information of a DataGrid variable.
      required:
        - name
        - dataType
      properties:
        name:
          type: string
          description: Name of the dataGrid column.
        length:
          type: integer
          description: Length of the value in the dataGrid column. Valid for dataType string.
        autoPopulate:
          type: boolean
          description: >
            When this flag value is set to true, the code that is generated by the application calls the appropriate data function to create the new column that you added to the metadata at runtime.
        dataType:
          type: string
          description: Data type of the dataGrid column.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - date
            - datetime
    decisionConditionStep:
      title: Decision Condition Step
      description: A condition step within a decision.
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.condition
        condition:
          $ref: "#/components/schemas/conditionStep"
        conditionExpression:
          type: string
          description: Condition expressed as expression. Can be used instead of condition.
        onTrue:
          $ref: "#/components/schemas/flow"
        onFalse:
          $ref: "#/components/schemas/flow"
    decisionNodeLinkStep:
      title: Node Link Decision Step
      description: Represents a link within a decision flow, which directs the execution flow of the decision to an arbitrary node based on the linkLabel of the target node.
      required:
        - decisionNodeLinkTarget
      type: object
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.node.link
        decisionNodeLinkTarget:
          type: string
          description: The linkLabel of the node to which execution flow should be directed.
    decisionRuleSetStep:
      title: Decision Rule Set Step
      description: A rule set step within a decision.
      type: object
      required:
        - type
      properties:
        type:
          type: string
          description: Type of step being referenced within the decision flow.
          format: enumeration
          enum:
            - application/vnd.sas.decision.step.ruleset
        mappingDataGridName:
          type: string
          description: Datagrid signature term name that is used by mapping. Valid only for customObject, ruleSet and model steps.
        ruleSet:
          $ref: "#/components/schemas/ruleSetStep"
        mappings:
          type: array
          description: Variable mappings for the model or rule set being referenced. Required if type is set to 'application/vnd.sas.decision.step.model' or 'application/vnd.sas.decision.step.ruleset'.
          items:
            $ref: "#/components/schemas/decisionStepMapping"
    codeFileSignatureTermDataGridExtension:
      title: Code File Signature Term DataGrid Extension
      description: Code File Signature Term DataGrid Extension is used to store the column information of a DataGrid variable.
      required:
        - name
        - dataType
      properties:
        name:
          type: string
          description: Name of the dataGrid column.
        length:
          type: integer
          description: Length of the value in the dataGrid column. Valid for dataType string.
        dataType:
          type: string
          description: Data type of the dataGrid column.
          format: enumeration
          enum:
            - string
            - decimal
            - integer
            - date
            - datetime
    modelStep:
      title: Model Decision Step
      description: Represents a model be referenced as a step within a decision flow.
      required:
        - name
        - id
      type: object
      properties:
        name:
          type: string
          description: The name of the model being referenced.
        id:
          type: string
          description: The ID of the model that is being referenced.
    branchCase:
      title: Decision Case
      description: Represents a single case within a branch step of a decision flow. A case can contain a simpleCondition or compoundCondition, but not both.
      type: object
      properties:
        id:
          type: string
          description: The system-assigned unique ID for this object
        label:
          type: string
          description: A label for the branch case.
        simpleCondition:
          $ref: "#/components/schemas/simpleBranchCondition"
        compoundCondition:
          $ref: "#/components/schemas/compoundBranchCondition"
        onTrue:
          $ref: "#/components/schemas/flow"
    customObjectStep:
      title: Custom Object Decision Step
      description: Represents a step containing a custom implemented step within the decision flow. Treatment groups, code files, and other decisions can be referenced using a custom object step.
      required:
        - name
        - uri
      type: object
      properties:
        name:
          type: string
          description: The name of the custom object being referenced.
        uri:
          type: string
          description: The URI of the custom object that is being referenced. URIs to code files, treatment groups, and other decisions are currently supported.
        type:
          type: string
          description: Type of object that is being referenced. Known supported types treatmentGroup, decision, decisionDs2CodeFile, decisionSQLCodeFile, and decisionPythonFile.
    recordContactStep:
      title: Record Decision Contact Step
      description: Represents the user specifying that contact information should be recorded at this step within the flow and details that should be recorded.
      required:
        - ruleFiredTracking
        - pathTracking
        - name
      type: object
      properties:
        name:
          type: string
          description: Logical name of this node for business user identification.
        ruleFiredTracking:
          type: boolean
          description: Flag that determines whether the current rule fired information will be recorded with the contact information being written.
        pathTracking:
          type: boolean
          description: Flag that determines whether the current path of steps that were taken in the decision up to this step will be recorded with the contact information being written.
        treatmentDatagridTerm:
          type: string
          description: The name of the decision signature entry to that contains treatment information that should be recorded during the contact for future response tracking. Provided data grid term must have a 'treatmentId' column extension.
        responseTrackingVariableName:
          type: string
          description: The name of the system-generated variable that will be created in the output of this decision that will contain a unique response tracking code that can be used for updating contact information in the Subject Contact API that corresponds to this step. This value will be determined by the service.
        excludeFromContactAggregation:
          type: boolean
          description: Flag that determines the setting of the 'excludeFromAggregation' member when contacts from this step are recorded. If not set it defaults to false.
        channelTerm:
          type: string
          description: The name of the decision signature entry to which contains channel that should be recorded during the contact for future response tracking. Provided term should be a 'string' type.
        auditTerms:
          type: array
          description: List of signature entries that will be included within the recorded contact information.
          items:
            $ref: "#/components/schemas/auditTerm"
    ruleSetStep:
      title: Rule Set Decision Step
      description: Specifies the rule set that is being referenced for this step. Required if type is set to 'application/vnd.sas.decision.step.ruleset'.
      required:
        - id
        - versionId
      type: object
      properties:
        name:
          type: string
          description: The name of the rule set being referenced.
        id:
          type: string
          description: Identifier of the rule set that is being referenced.
        versionId:
          type: string
          description: The identifier of the rule set version that is being referenced.
        versionName:
          type: string
          description: The name of the version that is being referenced.
    decisionStepMapping:
      title: Decision Step Mapping
      description: Represents the mapping between the terms input and output by a decision step and the signature entries of the decision.
      required:
        - stepTermName
        - direction
      type: object
      properties:
        stepTermName:
          type: string
          description: The name of the step term to which the decision signature entry is mapped.
        direction:
          type: string
          description: Describes whether mapping is an input, output, or both from the point of view of the decision step.
          enum:
            - input
            - output
            - inOut
        targetDecisionTermName:
          type: string
          description: The name of the decision signature entry to which a step term will be mapped.
        targetDataGridTermName:
          type: string
          description: The name of the term inside the mappedDataGrid term to which a step term will be mapped.
    conditionStep:
      title: Decision Condition Step
      description: Represents a condition step within a decision flow.
      required:
        - lhsTerm
        - operator
      type: object
      properties:
        lhsTerm:
          $ref: "#/components/schemas/term"
        rhsTerm:
          $ref: "#/components/schemas/term"
        rhsConstant:
          type: string
        operator:
          type: string
    compoundBranchCondition:
      title: Decision Compound Branch Condition
      description: Represents a compound condition.  The left hand side (lhs), right hand side (rhs) and operator of the condition are evaluated to produce a boolean result of "true" or "false".  A compound condition has a left hand side (lhsSimpleCondition or lhsCompoundCondition) a right hand side (rhsSimpleCondition or rhsCompoundCondition) and a boolean operator.
      required:
        - booleanOperator
      type: object
      properties:
        id:
          type: string
          description: The system-assigned unique ID for this object
        booleanOperator:
          type: string
          description: Specifies the booleanOperator of the condition.
          format: enumeration
          enum:
            - AND
            - OR
        lhsSimpleCondition:
          $ref: "#/components/schemas/simpleBranchCondition"
        lhsCompoundCondition:
          $ref: "#/components/schemas/compoundBranchCondition"
        rhsSimpleCondition:
          $ref: "#/components/schemas/simpleBranchCondition"
        rhsCompoundCondition:
          $ref: "#/components/schemas/compoundBranchCondition"
    simpleBranchCondition:
      title: Decision Simple Branch Condition
      description: Represents a simple condition.  The left hand side (lhs), right hand side (rhs) and operator of the condition are evaluated to produce a boolean result of "true" or "false".  The left hand side may be a variable or an experssion.
      required:
        - operator
      type: object
      properties:
        id:
          type: string
          description: The system-assigned unique ID for this object
        lhsTerm:
          $ref: "#/components/schemas/term"
        lhsConditionExpression:
          type: string
          description: Specifies the left hand side expression.  Should not be specified in lhsTerm is present.
        lhsConditionExpressionType:
          type: string
          description: Specifies the expected type resulting from lhsConditionExpression.  This actual result type of the expression is not validated. Should not be specified in lhsTerm is present.
        rhsTerm:
          $ref: "#/components/schemas/term"
        rhsConstant:
          type: string
          description: Specifies the constant to compare the lhsTerm or lhsConditionExpression to. Should not be specified in rhsTerm is present.
        operator:
          type: string
          description: Specifies the comparison operation or operator to use with left hand side and right hand side elements.
    auditTerm:
      title: Audit Term
      description: Represents a term that is being recorded for auditing purposes during contact recording.
      required:
        - name
      type: object
      properties:
        name:
          type: string
          description: The name of the term that is being referenced from the signature.
  examples:
    createOrUpdateDecisionFlowWithBranchEqualsExpression:
      description: Decision flow with a step branch and equals operator using an expression.
      value:
        name: My Decision With a Branch Equals and Expression
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: 1000==>GEN==>
                  simpleCondition:
                    lhsConditionExpression: '"my_input" + 200 = 1000'
                    lhsConditionExpressionType: integer
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        publishedModule: {}
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: equals
              name: Equals
    fullDetailsOfDecisionNodeTypes:
      description: Decision node types with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/decisionNodeTypes
            uri: /decisions/decisionNodeTypes
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.node.type
          - method: GET
            rel: first
            href: /decisions/decisionNodeTypes?start=0&limit=1
            uri: /decisions/decisionNodeTypes?start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.node.type
          - method: GET
            rel: prev
            href: /decisions/decisionNodeTypes?start=1&limit=1
            uri: /decisions/decisionNodeTypes?start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.node.type
          - method: GET
            rel: self
            href: /decisions/decisionNodeTypes?start=2&limit=1
            uri: /decisions/decisionNodeTypes?start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: createDecisionNodeType
            href: /decisions/decisionNodeTypes
            uri: /decisions/decisionNodeTypes
            type: application/vnd.sas.decision.node.type
            responseType: application/vnd.sas.decision.node.type
        name: decisionNodeTypes
        accept: application/vnd.sas.decision.node.type
        start: 2
        count: 3
        items:
          - creationTimeStamp: 2021-05-07T18:12:17.412Z
            modifiedTimeStamp: 2021-05-07T18:12:17.412Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: a86ded32-73bd-434d-9f89-29ba4a90c131
            name: Demo Node Type 3
            hasProperties: false
            hasInputs: true
            hasOutputs: true
            inputDatagridMappable: false
            outputDatagridMappable: false
            inputDecisionTermMappable: true
            outputDecisionTermMappable: true
            independentMappings: false
            themeId: DNT_THEME1
            type: static
            links:
              - method: GET
                rel: self
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
                responseType: application/vnd.sas.decision.node.type
              - method: DELETE
                rel: delete
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
              - method: PUT
                rel: update
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
                type: application/vnd.sas.decision.node.type
                responseType: application/vnd.sas.decision.node.type
              - method: POST
                rel: setContent
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
                type: application/vnd.sas.decision.node.type.content
                responseType: application/vnd.sas.decision.node.type.content
              - method: GET
                rel: content
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
                responseType: application/vnd.sas.decision.node.type.content
              - method: GET
                rel: decisionStepCode
                href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/decisionStepCode
                uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/decisionStepCode
                responseType: application/vnd.sas.decision.step.code
          - creationTimeStamp: 2021-05-07T18:12:17.412Z
            modifiedTimeStamp: 2021-05-07T18:12:17.412Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 044003f4-ab99-4be9-831b-40da3462b359
            name: My Custom Type
            hasProperties: false
            hasInputs: true
            hasOutputs: true
            inputDatagridMappable: false
            outputDatagridMappable: false
            inputDecisionTermMappable: true
            outputDecisionTermMappable: true
            independentMappings: false
            style:
              icon:
                id: f0c6
                ref: sas.icons.HC.BUSINESSRULES
              color: 1
            type: rest
            links:
              - method: GET
                rel: self
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
                responseType: application/vnd.sas.decision.node.type
              - method: DELETE
                rel: delete
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
              - method: PUT
                rel: update
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359
                type: application/vnd.sas.decision.node.type
                responseType: application/vnd.sas.decision.node.type
              - method: POST
                rel: setContent
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
                type: application/vnd.sas.decision.node.type.content
                responseType: application/vnd.sas.decision.node.type.content
              - method: GET
                rel: content
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
                responseType: application/vnd.sas.decision.node.type.content
              - method: GET
                rel: decisionStepCode
                href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/decisionStepCode
                uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/decisionStepCode
                responseType: application/vnd.sas.decision.step.code
        limit: 1
        version: 2
    analysisCodeOfDecisionFlow:
      description: Generated analysis code for a decision flow.
      value:
        code: >
          loadActionSet "simple";

          loadActionSet "ds2";


          action simple.freq /
              casOut={name='add_cf_Scenario_1_add_cf_2021-05-07_00-50-22_path' caslib='Public' replace=TRUE}
              table={name='add_cf_Scenario_1_add_cf_2021-05-07_00-50-22_output' caslib='Public' vars={{name='PathID'}} };

          action runDs2 / program = 'data

          "Public"."add_cf_Scenario_1_add_cf_2021-05-07_00-50-22_path"(overwrite=yes

          rename=( _charvar_=PathID _frequency_=Count) keep=(PathID Count));
                                         method run();
                                             set "Public"."add_cf_Scenario_1_add_cf_2021-05-07_00-50-22_path";
                                         end;
                                     enddata;';
        codeType: application/json
        outputTableName: add_cf_Scenario_1_add_cf_2021-05-07_00-50-22_path
        outputLibraryName: Public
        version: 1
    externalArtifactsOfDecisionFlowRevision:
      description: External artifacts related to decision flow revision.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: up
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/
            type: application/vnd.sas.decision
        name: externalArtifacts
        accept: application/vnd.sas.decision.external.artifact
        count: 0
        items: []
        version: 2
    createOrUpdateSegmentationTreeWithCodeAssignmentOutcomeAction:
      description: Create or update a segmentation tree with a code assignment outcome action.
      value:
        name: EvenChecker
        signature:
          - name: value
            direction: input
            dataType: integer
          - name: iseven
            direction: output
            dataType: boolean
        node:
          type: booleanExpression
          booleanExpressionName: even_check
          valueNodes:
            - value: "true"
              outcomeName: even
            - value: "false"
              outcomeName: odd
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
        booleanExpressions:
          - name: even_check
            expression: mod(value, 2) = 0
    revisionSummaryOfDecisionCodeFileRevision:
      description: Decision code file revision with revision summary details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.490Z
        modifiedTimeStamp: 2021-05-06T20:21:04.490Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: f02aa26d-af06-4198-9705-2306bad711a1
        name: add_cf
        majorRevision: 1
        minorRevision: 0
        locked: true
        sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
        copyTimeStamp: 2021-05-06T20:21:04.490Z
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
        version: 1
    errorMarkersForDecision:
      description: Decision error markers for a scoring test.
      value:
        name: errorMarkers
        accept: application/vnd.sas.decision.error.marker
        items:
          - stepId: 9a548087-155d-4bb9-83dd-5d6a11406af5
            stepName: getModelScore
            objectUri: /businessRules/ruleSets/d730ad72-fc74-4596-9fbb-a0a96f39dc98/revisions/837dc968-d53c-4e65-aeb9-f0bf62ed8a94
            errors:
              - errorLineNumber: 302
                errorMessage: Float divide by zero
              - errorLineNumber: 302
                errorMessage: Result set to missing value
          - stepId: d357634c-db21-438c-8974-833e4509e1d2
            stepName: getEligibility
            objectUri: /decisions/flows/38241e06-3694-4aa6-b390-02ae5a55ed28/revisions/f70752bd-47ac-4676-b43c-acf1ba94e03b
            errors:
              - errorLineNumber: 4106
                errorMessage: Function not found
              - errorLineNumber: 4106
                errorMessage: Result set to missing value
            warnings:
              - errorLineNumber: 8
                errorMessage: No DECLARE for assigned-to variable dt; creating it as a global variable of type double.
        version: 1
    revisionSummaryOfSegmentationTrees:
      description: Segmentation trees with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: GET
            rel: first
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: GET
            rel: next
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: POST
            rel: create
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        name: segmentationTrees
        accept: application/vnd.sas.dcm.summary
        start: 2
        items:
          - creationTimeStamp: 2022-03-18T17:00:26.172Z
            modifiedTimeStamp: 2022-03-18T17:00:26.174Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 647ccb1f-68d1-419a-9f09-1942bea0a122
            name: EvenChecker
            majorRevision: 1
            minorRevision: 0
            locked: false
            folderType: folder
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees
                uri: /decisions/segmentationTrees
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.summary
              - method: DELETE
                rel: delete
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
              - method: PUT
                rel: update
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
                responseType: application/vnd.sas.decision.segmentation.tree
            version: 1
        limit: 1
        version: 2
    createOrUpdateDecisionFlowWithCustomContext:
      description: Decision flow with a custom context.
      value:
        name: My Decision With a Custom Context
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        customContextUri: /decisions/codeFiles/b7e29c8d-10af-4101-aaf4-daffffc46807/revisions/8dfbf3f1-64b2-426e-aa2b-55d412f9a012
        customContextMicroAnalyticServiceUri: /decisions/codeFiles/4cdd0b67-25c1-40bf-b897-74cc163fb4bd/revisions/fb7d2e7c-b995-4de8-a17a-0e1cdae4efe3
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              customObject:
                uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                name: My DS2 Code File
                type: decisionDS2CodeFile
              mappings:
                - targetDecisionTermName: my_input
                  direction: input
                  stepTermName: my_input
                - targetDecisionTermName: my_output
                  direction: output
                  stepTermName: my_output
    fullDetailsOfDecisionCodeFiles:
      description: Decision code files with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles?sortBy=name&start=1&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: first
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: prev
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: next
            href: /decisions/codeFiles?sortBy=name&start=2&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.decision.code.file
        start: 1
        count: 4
        items:
          - creationTimeStamp: 2021-05-06T20:21:04.420Z
            modifiedTimeStamp: 2021-05-06T20:21:04.882Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: cd404a82-af5b-4835-9672-9730470a6be8
            name: add_cf
            majorRevision: 1
            minorRevision: 0
            checkout: false
            locked: false
            type: decisionDS2CodeFile
            signature:
              - name: a
                dataType: decimal
                direction: input
              - name: b
                dataType: decimal
                direction: input
              - name: c
                dataType: decimal
                direction: output
            status: valid
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles
                uri: /decisions/codeFiles
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.decision.code.file
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
                uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.step.code
              - method: GET
                rel: revisions
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T20:21:04.490Z
            fileUri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9
            version: 2
        limit: 1
        version: 2
    revisionSummaryOfDecisionCodeFiles:
      description: Decision code files with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles?sortBy=name&start=1&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/codeFiles?sortBy=name&start=2&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.dcm.summary
        start: 1
        count: 4
        items:
          - creationTimeStamp: 2021-05-06T20:21:04.420Z
            modifiedTimeStamp: 2021-05-06T20:21:04.882Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: cd404a82-af5b-4835-9672-9730470a6be8
            name: add_cf
            majorRevision: 1
            minorRevision: 0
            locked: false
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T20:21:04.490Z
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles
                uri: /decisions/codeFiles
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
                uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
              - method: GET
                rel: revisions
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
            version: 1
        limit: 1
        version: 2
    resourceSummaryOfDecisionFlow:
      description: Decision flow with resource summary details.
      value:
        creationTimeStamp: 2021-05-07T16:06:56.319Z
        modifiedTimeStamp: 2021-05-07T16:06:56.319Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
        type: decision
        name: add_dec
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: alternate
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.summary
        version: 2
    revisionSummaryOfDecisionFlowRevisions:
      description: Decision flow revisions with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: first
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: prev
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: next
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: POST
            rel: createRevision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: revisions
        accept: application/vnd.sas.dcm.summary
        start: 2
        count: 6
        items:
          - creationTimeStamp: 2021-05-07T16:06:05.631Z
            modifiedTimeStamp: 2021-05-07T16:06:22.755Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 77cfc1c3-f050-4169-939a-941e7c664215
            name: add_dec
            majorRevision: 1
            minorRevision: 2
            locked: true
            sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
            copyTimeStamp: 2021-05-07T16:06:05.631Z
            folderType: userFolder
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                type: application/vnd.sas.decision
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
              - method: GET
                rel: code
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                type: text/vnd.sas.source.ds2
              - method: POST
                rel: mappedCode
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                type: application/vnd.sas.score.code.generation.request
                responseType: application/vnd.sas.score.mapped.code
              - method: GET
                rel: decision
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
            version: 1
        limit: 1
        version: 2
    createOrUpdateDecisionNodeTypeRest:
      description: Creating or updating a REST decision node type.
      value:
        name: Demo Node Type
        hasProperties: false
        hasInputs: true
        hasOutputs: true
        inputDatagridMappable: false
        outputDatagridMappable: false
        inputDecisionTermMappable: true
        outputDecisionTermMappable: true
        independentMappings: false
        style:
          icon:
            id: f0c6
            ref: sas.icons.HC.BUSINESSRULES
          color: 1
        type: rest
    createOrUpdateDecisionFlowWithBranchLikeExpression:
      description: Decision flow with step branch and `like` operator.
      value:
        name: My Decision With a Branch Like
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: input
            name: my_input_ch
            dataType: string
            description: ""
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: "'xyz'==>GEN==>"
                  simpleCondition:
                    lhsConditionExpression: "\"my_input_ch\" || 'xyz'"
                    lhsConditionExpressionType: string
                    operator: like
                    rhsConstant: "'xyz'"
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: like
              name: Like
    createOrUpdateSegmentationTreeWithMatrixNode:
      description: Create or update a segmentation tree with a matrix node.
      value:
        name: LoanStatus
        signature:
          - name: income
            direction: input
            dataType: decimal
          - name: credit_score
            direction: input
            dataType: decimal
          - name: status
            direction: output
            dataType: string
        node:
          type: matrix
          matrixName: good_bad
          valueNodes:
            - value: good
              outcomeName: approved
            - value: bad
              outcomeName: rejected
        outcomes:
          - name: approved
            actions:
              - type: variableAssignment
                variableName: status
                valueType: static
                value: approved
          - name: rejected
            actions:
              - type: variableAssignment
                variableName: status
                valueType: static
                value: rejected
        matrices:
          - name: good_bad
            acrossVariableName: credit_score
            acrossVariableValues:
              - ">=700"
              - <700
            acrossVariableLabels:
              - Good
              - Bad
            downVariableName: income
            downVariableValues:
              - ">=60000"
              - <60000
            downVariableLabels:
              - High
              - Low
            outcomes:
              - - good
                - good
              - - good
                - bad
    resourceSummaryOfSegmentationTree:
      description: A Segmentation tree with resource summary details.
      value:
        creationTimeStamp: 2022-03-18T01:42:10.472Z
        modifiedTimeStamp: 2022-03-18T01:42:10.473Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: b11a2b86-8b0b-419a-92ab-edd62881aaa5
        type: segmentationTree
        name: EvenChecker
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
          - method: PUT
            rel: update
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        version: 2
    fullDetailsOfDecisionFlow:
      description: Decision flow with full details.
      value:
        creationTimeStamp: 2021-05-07T16:06:56.319Z
        modifiedTimeStamp: 2021-05-07T16:06:56.319Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
        name: add_dec
        majorRevision: 1
        minorRevision: 5
        signature:
          - creationTimeStamp: 2021-05-07T16:04:52.928Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: ab71e7ea-abe8-4a69-afd5-4a2ba65ef5c8
            direction: input
            name: a
            dataType: decimal
          - creationTimeStamp: 2021-05-07T16:04:52.929Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: d6b357c6-e798-48b1-ad42-bb3db4cfa774
            direction: input
            name: b
            dataType: decimal
          - creationTimeStamp: 2021-05-07T16:04:52.929Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 8de5614b-48c2-4631-b819-ecc3e63ee0a6
            direction: output
            name: c
            dataType: decimal
        flow:
          creationTimeStamp: 2021-05-07T16:06:56.326Z
          modifiedTimeStamp: 2021-05-07T16:06:56.326Z
          createdBy: sasdemo
          modifiedBy: sasdemo
          id: 0b77ae9e-dcc7-4c7f-91c4-e725cd30092e
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              creationTimeStamp: 2021-05-07T16:06:56.328Z
              modifiedTimeStamp: 2021-05-07T16:06:56.328Z
              createdBy: sasdemo
              modifiedBy: sasdemo
              id: 5da31100-8063-4dae-8b6d-dbc5965328d9
              publishedModule: {}
              customObject:
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                name: add_cf
                type: decisionDS2CodeFile
              mappings:
                - creationTimeStamp: 2021-05-07T16:06:56.329Z
                  modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 6bdfc780-9183-4fce-bddf-74fa0be6edae
                  targetDecisionTermName: a
                  direction: input
                  stepTermName: a
                - creationTimeStamp: 2021-05-07T16:06:56.329Z
                  modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 8fa3a412-ed91-4560-8b9a-8311a9daab32
                  targetDecisionTermName: b
                  direction: input
                  stepTermName: b
                - creationTimeStamp: 2021-05-07T16:06:56.329Z
                  modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: c965a73c-97d6-4d5f-a2c4-dbf54c690144
                  targetDecisionTermName: c
                  direction: output
                  stepTermName: c
              links:
                - method: GET
                  rel: customObjectCode
                  href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                  uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                  responseType: application/vnd.sas.decision.step.code
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: revisions
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: currentRevision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: code
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
            type: text/vnd.sas.source.ds2
          - method: POST
            rel: mappedCode
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
            type: application/vnd.sas.score.code.generation.request
            responseType: application/vnd.sas.score.mapped.code
          - method: GET
            rel: externalArtifacts
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: DELETE
            rel: delete
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
          - method: PUT
            rel: update
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        nodeCount: 1
        folderType: userFolder
        sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
        copyTimeStamp: 2021-05-07T16:06:56.319Z
        checkout: false
        validationStatus: none
        version: 15
    directDependentObjects:
      description: Decision direct dependent objects
      value:
        uri: /decisions/flows/feb85c01-9adf-4ffb-b824-391aba13a763
        name: Duo treatments
        dependentUris:
          - /businessRules/ruleSets/008ff5f2-a2ea-4747-9b1c-fd6a59a86956
          - /comments/comments/162fd209-43d8-4ace-9446-7d4a93414b4e
          - /decisions/codeFiles/7fcf16b5-35cf-4082-90bc-55ec2f225fcf
          - /decisions/flows/43a5e350-3be7-4236-91b3-967c14dd98dd
          - /treatmentDefinitions/definitionGroups/76d3d504-a837-4a34-bf79-41de4bd96c2b
          - /treatmentDefinitions/definitionGroups/5cc2ee2d-ac02-4ee5-85f7-1931c6c6b4c5
        version: 2
    createOrUpdateDecisionFlowWithMASModule:
      description: Decision flow with a dynamic SAS Micro Analytic Service module.
      value:
        name: My Decision With a SAS Micro Analytic Service Module
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              publishedModule:
                uri: /microanalyticScore/modules/my sub decision1_0
              customObject:
                uri: /decisions/flows/6ac132aa-fe1a-4fa4-82fb-99a5eda088af/revisions/186b3805-f9be-4d3b-88ea-712a273a8a02
                name: My Sub-Decision
                type: dynamicMASDecisionModule
              mappings:
                - targetDecisionTermName: my_input
                  direction: input
                  stepTermName: my_input
                - targetDecisionTermName: my_output
                  direction: output
                  stepTermName: my_output
    fullDetailsOfSegmentationTreeRevision:
      description: A segmentation tree revision with full details.
      value:
        creationTimeStamp: 2022-03-19T19:37:17.207Z
        modifiedTimeStamp: 2022-03-19T19:37:17.209Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: edaa1c3e-7b75-4713-8ace-af10b3415e91
        name: EvenChecker
        majorRevision: 8
        minorRevision: 0
        signature:
          - name: iseven
            dataType: boolean
            direction: output
          - name: value
            dataType: integer
            direction: input
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
        matrices: []
        booleanExpressions:
          - name: even_check
            expression: mod(value, 2) = 0
        node:
          type: booleanExpression
          id: b10faaff-d494-49ed-a24c-a4860367b8d8
          label: even_check
          valueNodes:
            - id: d74fc591-1fba-4ea0-84be-ee30af74e710
              label: "true"
              value: "true"
              outcomeName: even
            - id: ec9a6c17-00f1-44a0-ba65-474ddafda8b5
              label: "false"
              value: "false"
              outcomeName: odd
          booleanExpressionName: even_check
        folderType: folder
        checkout: false
        locked: false
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
        version: 1
    fullDetailsOfDecisionCodeFile:
      description: Decision code file with full details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.420Z
        modifiedTimeStamp: 2021-05-06T20:21:04.882Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: cd404a82-af5b-4835-9672-9730470a6be8
        name: add_cf
        majorRevision: 1
        minorRevision: 0
        checkout: false
        locked: false
        type: decisionDS2CodeFile
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        status: valid
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.step.code
          - method: GET
            rel: revisions
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
        sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
        copyTimeStamp: 2021-05-06T20:21:04.490Z
        fileUri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9
        version: 2
    preConditionRequired:
      description: Pre-condition required.
      value:
        httpStatusCode: 428
        version: 2
    createOrUpdateSegmentationTreeWithVariableAssignmentOutcomeAction:
      description: Create or update a segmentation tree with a variable assignment outcome action.
      value:
        name: EvenChecker
        signature:
          - name: value
            direction: input
            dataType: integer
          - name: iseven
            direction: output
            dataType: boolean
        node:
          type: booleanExpression
          booleanExpressionName: even_check
          valueNodes:
            - value: "true"
              outcomeName: even
            - value: "false"
              outcomeName: odd
        outcomes:
          - name: even
            actions:
              - type: variableAssignment
                variableName: iseven
                valueType: static
                value: true
          - name: odd
            actions:
              - type: variableAssignment
                variableName: iseven
                valueType: static
                value: false
        booleanExpressions:
          - name: even_check
            expression: mod(value, 2) = 0
    createOrUpdateDecisionType:
      description: Decision type
      value:
        id: d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
        name: Fraud
        l10nKey: SASFraudManagement-SASDecisionManager-gui-icu.underThirtyMs.type.label
        denyDecisionNodeTypes:
          - ruleSet
        allowDecisionNodeTypes:
          - 98879d99-4aaf-4d40-b18a-483659ffc32
          - d28e6407-6f5a-4839-8c39-d505cebff6b8
    resourceSummaryOfDecisionCodeFileRevisions:
      description: Decision code file revisions with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.summary
        start: 3
        count: 5
        items:
          - creationTimeStamp: 2021-05-06T21:36:42.228Z
            modifiedTimeStamp: 2021-05-06T21:36:42.228Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: a956c407-8086-414f-984e-0c20d5de71bc
            type: decisionDS2CodeFile
            name: add_cf
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
                uri: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
            version: 2
          - creationTimeStamp: 2021-05-06T21:37:00.131Z
            modifiedTimeStamp: 2021-05-06T21:37:00.131Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 66c99a48-0903-44ea-948f-7c711fde4291
            type: decisionDS2CodeFile
            name: add_cf
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
                uri: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
            version: 2
        limit: 20
        version: 2
    decisionNodeReferenceObjectsOfDecisionFlow:
      description: Decision node reference objects.
      value:
        id: b1bfbbc2-f318-4288-9ce1-70be7a239567
        name: TreatmentGroup1
        type: application/vnd.sas.treatment.definition.group
        activeVersionReference: true
        referenceList:
          - id: d04bd753-28ed-4cc9-ad02-d9f15485e4d8
            name: Decision1
            versionId: 1fc0bfc5-7594-42c7-bab0-1965dca4abca
          - id: 149a16ae-558b-4aad-87c3-a514d2d1ae06
            name: SubDecision1
            versionId: 6457bff2-0256-47fc-b43e-0e0149268826
    createOrUpdateSegmentationTreeWithVariableNode:
      description: Create or update a segmentation tree with a variable node.
      value:
        name: EvenChecker
        signature:
          - name: value
            direction: input
            dataType: integer
          - name: iseven
            direction: output
            dataType: boolean
        node:
          type: variable
          variableName: value
          valueNodes:
            - value: 2;4;6
              outcomeName: even
            - value: 1;3;5
              outcomeName: odd
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
    validateValidExpressionResponse:
      description: Validation of the decision expression completed successfully.
      value:
        valid: true
        version: 1
    fullDetailsOfSegmentationTrees:
      description: Segmentation trees with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: first
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: next
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: POST
            rel: create
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        name: segmentationTrees
        accept: application/vnd.sas.decision.segmentation.tree
        start: 2
        items:
          - creationTimeStamp: 2022-03-18T17:00:26.172Z
            modifiedTimeStamp: 2022-03-18T17:00:26.174Z
            createdBy: sastest1
            modifiedBy: sastest1
            id: 647ccb1f-68d1-419a-9f09-1942bea0a122
            name: EvenChecker
            majorRevision: 1
            minorRevision: 0
            signature:
              - name: iseven
                dataType: boolean
                direction: output
              - name: value
                dataType: integer
                direction: input
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
            matrices: []
            booleanExpressions:
              - name: even_check
                expression: mod(value, 2) = 0
            node:
              type: booleanExpression
              id: ad98870f-97d9-4255-9355-e06363a6bf64
              label: even_check
              valueNodes:
                - id: 492805f9-421f-4f4d-8762-b6b775bf64a6
                  label: "true"
                  value: "true"
                  outcomeName: even
                - id: 6131af0e-4444-43eb-aa4d-72a071a399bf
                  label: "false"
                  value: "false"
                  outcomeName: odd
              booleanExpressionName: even_check
            folderType: folder
            checkout: false
            locked: false
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees
                uri: /decisions/segmentationTrees
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.summary
              - method: DELETE
                rel: delete
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
              - method: PUT
                rel: update
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
                responseType: application/vnd.sas.decision.segmentation.tree
            version: 1
        limit: 1
        version: 2
    fullDetailsOfDecisionNodeType:
      description: Decision node type with full details.
      value:
        creationTimeStamp: 2021-05-07T18:12:17.412Z
        modifiedTimeStamp: 2021-05-07T18:12:17.412Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: a86ded32-73bd-434d-9f89-29ba4a90c131
        name: Demo Node Type 3
        hasProperties: false
        hasInputs: true
        hasOutputs: true
        inputDatagridMappable: false
        outputDatagridMappable: false
        inputDecisionTermMappable: true
        outputDecisionTermMappable: true
        independentMappings: false
        themeId: DNT_THEME1
        type: static
        links:
          - method: GET
            rel: self
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
            responseType: application/vnd.sas.decision.node.type
          - method: DELETE
            rel: delete
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
          - method: PUT
            rel: update
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131
            type: application/vnd.sas.decision.node.type
            responseType: application/vnd.sas.decision.node.type
          - method: POST
            rel: setContent
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            type: application/vnd.sas.decision.node.type.content
            responseType: application/vnd.sas.decision.node.type.content
          - method: GET
            rel: content
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            responseType: application/vnd.sas.decision.node.type.content
          - method: GET
            rel: decisionStepCode
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/decisionStepCode
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/decisionStepCode
            responseType: application/vnd.sas.decision.step.code
    createOrUpdateDecisionFlowWithBranchRange:
      description: Decision flow with a step branch and range operators.
      value:
        name: My Decision With a Branch Range
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: 99 - 999==>GEN==>
                  compoundCondition:
                    booleanOperator: AND
                    lhsSimpleCondition:
                      lhsTerm:
                        name: my_input
                      operator: ">="
                      rhsConstant: "99"
                    rhsSimpleCondition:
                      lhsTerm:
                        name: my_input
                      operator: <=
                      rhsConstant: "999"
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: range
              name: Range
    badRequest:
      description: Bad request.
      value:
        httpStatusCode: 400
        version: 2
    decisionStepCodeOfDecisionCodeFileRevision:
      description: Decision code file revision as decision step code.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.490Z
        modifiedTimeStamp: 2021-05-06T20:21:04.490Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: f02aa26d-af06-4198-9705-2306bad711a1
        type: decisionDS2CodeFile
        name: add_cf
        code: >
          /*{"signatureExtension":[]}*/

          package "${PACKAGE_NAME}" /inline;
             method execute(double a, double b, in_out double c);
                  c=a+b;
             end;
          endpackage;
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
        version: 1
    fullDetailsOfDecisionCodeFileRevisions:
      description: Decision code file revisions with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.summary
        start: 3
        count: 5
        items:
          - creationTimeStamp: 2021-05-06T21:36:42.228Z
            modifiedTimeStamp: 2021-05-06T21:36:42.228Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: a956c407-8086-414f-984e-0c20d5de71bc
            name: add_cf
            majorRevision: 1
            minorRevision: 3
            checkout: false
            locked: true
            type: decisionDS2CodeFile
            signature:
              - name: a
                dataType: decimal
                direction: input
              - name: b
                dataType: decimal
                direction: input
              - name: c
                dataType: decimal
                direction: output
            status: valid
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.decision.code.file
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
                uri: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T21:36:42.228Z
            fileUri: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b
            version: 2
          - creationTimeStamp: 2021-05-06T21:37:00.131Z
            modifiedTimeStamp: 2021-05-06T21:37:00.131Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 66c99a48-0903-44ea-948f-7c711fde4291
            name: add_cf
            majorRevision: 1
            minorRevision: 4
            checkout: false
            locked: false
            type: decisionDS2CodeFile
            signature:
              - name: a
                dataType: decimal
                direction: input
              - name: b
                dataType: decimal
                direction: input
              - name: c
                dataType: decimal
                direction: output
            status: valid
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.decision.code.file
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
                uri: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T21:37:00.131Z
            fileUri: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1
            version: 2
        limit: 20
        version: 2
    validateInvalidExpressionResponse:
      description: Validation of the decision expression failed.
      value:
        valid: false
        error:
          errorCode: 0
          message: This is a CAS error
          httpStatusCode: 400
          version: 2
        version: 1
    fullDetailsOfDecisionCodeFileRevision:
      description: Decision code file revision with full details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.490Z
        modifiedTimeStamp: 2021-05-06T20:21:04.490Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: f02aa26d-af06-4198-9705-2306bad711a1
        name: add_cf
        majorRevision: 1
        minorRevision: 0
        checkout: false
        locked: true
        type: decisionDS2CodeFile
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        status: valid
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
        sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
        copyTimeStamp: 2021-05-06T20:21:04.490Z
        fileUri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9
        version: 2
    notAcceptable:
      description: Not acceptable.
      value:
        httpStatusCode: 406
        version: 2
    revisionSummaryOfSegmentationTreeRevision:
      description: A segmentation tree revision with revision summary details.
      value:
        creationTimeStamp: 2022-03-19T19:37:17.207Z
        modifiedTimeStamp: 2022-03-19T19:37:17.209Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: edaa1c3e-7b75-4713-8ace-af10b3415e91
        name: EvenChecker
        majorRevision: 8
        minorRevision: 0
        locked: false
        folderType: folder
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
        version: 1
    decisionValidationErrorsDecisionFlow:
      description: Decision validation errors related to decision flow.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/errors
            uri: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/errors
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.validation.error
          - method: GET
            rel: self
            href: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/errors?start=0&limit=10
            uri: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/errors?start=0&limit=10
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.validation.error
        name: decisionValidationErrors
        accept: application/vnd.sas.decision.validation.error
        start: 0
        count: 3
        items:
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            variableId: ae39c528-6769-41d1-865b-fd617a8ee52a
            variableName: add_gv
            itemType: variable
            errorCode: 77022
            errorMessage: Global variable is not activated.
            version: 1
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            stepId: 38cb283b-ecd9-4c45-b3a5-3500f4173ecb
            stepName: add_rs
            itemType: application/vnd.sas.decision.step.ruleset
            errorCode: 77021
            errorMessage: Signature of the resource in the step has changed.
            version: 1
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            stepId: 38cb283b-ecd9-4c45-b3a5-3500f4173ecb
            stepName: add_rs
            stepMappingId: a8ef2325-84ad-4c52-808f-38a975e2f613
            stepMappingName: a
            itemType: mapping
            errorCode: 77024
            errorMessage: The mapping is not assigned.
            version: 1
        limit: 10
        version: 2
    createOrUpdateDecisionNodeTypeStatic:
      description: Creating or updating a static decision node type.
      value:
        name: Demo Node Type
        hasProperties: false
        hasInputs: true
        hasOutputs: true
        inputDatagridMappable: false
        outputDatagridMappable: false
        inputDecisionTermMappable: true
        outputDecisionTermMappable: true
        independentMappings: false
        themeId: DNT_THEME1
        type: static
    validateInvalidExpression:
      description: Invalid decision expression.
      value:
        expression: thisisnotavariable = 2112
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: string
            direction: input
          - name: d
            dataType: dataGrid
            direction: input
    decisionVariablesDecisionFlow:
      description: Decision variables related to a decision flow.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.variable
          - method: GET
            rel: self
            href: /decisions/flows?filter=eq(legacy,'true')&sortBy=creationTimeStamp:ascending&start=0&limit=10
            uri: /decisions/flows?filter=eq(legacy,'true')&sortBy=creationTimeStamp:ascending&start=0&limit=10
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.variable
        name: decisionlegacyVariables
        start: 0
        count: 0
        items: []
        limit: 10
        version: 2
    createOrUpdateDecisionFlowWithBranchLike:
      description: Decision flow with step branch and `like` operator.
      value:
        name: My Decision With a Branch Like
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: input
            name: my_input_ch
            dataType: string
            description: ""
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: "'xyz'==>GEN==>"
                  simpleCondition:
                    lhsTerm:
                      name: my_input_ch
                    operator: like
                    rhsConstant: "'xyz'"
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: like
              name: Like
    resourceSummaryOfSegmentationTreeRevision:
      description: A segmentation tree revision with resource summary details.
      value:
        creationTimeStamp: 2022-03-19T19:37:17.207Z
        modifiedTimeStamp: 2022-03-19T19:37:17.209Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: edaa1c3e-7b75-4713-8ace-af10b3415e91
        type: segmentationTree
        name: EvenChecker
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
            uri: /decisions/segmentationTrees/53241f08-d215-4e84-9667-026d93996a3b/revisions/edaa1c3e-7b75-4713-8ace-af10b3415e91
        version: 2
    resourceSummaryOfSegmentationTrees:
      description: Segmentation trees with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            uri: /decisions/segmentationTrees?sortBy=creationTimeStamp:descending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        name: segmentationTrees
        accept: application/vnd.sas.summary
        start: 2
        items:
          - creationTimeStamp: 2022-03-18T17:00:26.172Z
            modifiedTimeStamp: 2022-03-18T17:00:26.174Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 647ccb1f-68d1-419a-9f09-1942bea0a122
            type: segmentationTree
            name: EvenChecker
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees
                uri: /decisions/segmentationTrees
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.summary
              - method: DELETE
                rel: delete
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
              - method: PUT
                rel: update
                href: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                uri: /decisions/segmentationTrees/647ccb1f-68d1-419a-9f09-1942bea0a122
                type: application/vnd.sas.decision.segmentation.tree
                responseType: application/vnd.sas.decision.segmentation.tree
            version: 2
        limit: 1
        version: 2
    createOrUpdateDecisionFlowWithRecordContact:
      description: Decision flow with record contacts.
      value:
        name: My Decision With a Record Contacts
        signature:
          - direction: output
            name: Myu20Treatmentu20Definitionu20Group_out
            dataType: dataGrid
            dataGridExtension:
              - name: treatment_definition_group_id
                dataType: string
                length: 36
              - name: treatment_definition_group_revision_id
                dataType: string
                length: 36
              - name: treatment_definition_id
                dataType: string
                length: 36
              - name: treatment_definition_revision_id
                dataType: string
                length: 36
              - name: treatment_definition_name
                dataType: string
                length: 250
              - name: m_attribute
                dataType: decimal
          - direction: input
            name: my_attribute
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              mappingDataGridName: Myu20Treatmentu20Definitionu20Group_out
              customObject:
                uri: /treatmentDefinitions/definitionGroups/af211677-4c28-4303-8bb3-8f7c11385cbd/revisions/@active
                name: My Treatment Definition Group
                type: treatmentGroup
              mappings:
                - targetDataGridTermName: treatment_definition_group_id
                  direction: output
                  stepTermName: treatment_definition_group_id
                - targetDataGridTermName: treatment_definition_group_revision_id
                  direction: output
                  stepTermName: treatment_definition_group_revision_id
                - targetDataGridTermName: treatment_definition_id
                  direction: output
                  stepTermName: treatment_definition_id
                - targetDataGridTermName: treatment_definition_revision_id
                  direction: output
                  stepTermName: treatment_definition_revision_id
                - targetDataGridTermName: treatment_definition_name
                  direction: output
                  stepTermName: treatment_definition_name
                - targetDecisionTermName: my_attribute
                  direction: input
                  stepTermName: my_attribute
                - targetDataGridTermName: m_attribute
                  direction: output
                  stepTermName: my_attribute
            - type: application/vnd.sas.decision.step.record.contact
              recordContact:
                name: Record_Contacts1
                ruleFiredTracking: true
                pathTracking: true
                excludeFromContactAggregation: false
                treatmentDatagridTerm: Myu20Treatmentu20Definitionu20Group_out
                responseTrackingVariableName: rt_Record_Contacts1
                channelTerm: my_attribute
                auditTerms:
                  - name: my_attribute
    scoreCodeGenerationRequestForDecisionFlow:
      description: Score code generation request.
      value:
        scoreDefinitionId: 2d7d079d-963f-4c5e-a920-262accd4eb9e
        hints:
          tableBaseName: add_test_
    revisionSummaryOfDecisionFlowRevision:
      description: Decision flow revision with revision summary details.
      value:
        creationTimeStamp: 2021-05-07T16:06:05.631Z
        modifiedTimeStamp: 2021-05-07T16:06:22.755Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 77cfc1c3-f050-4169-939a-941e7c664215
        name: add_dec
        majorRevision: 1
        minorRevision: 2
        locked: true
        sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
        copyTimeStamp: 2021-05-07T16:06:05.631Z
        folderType: userFolder
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.decision
          - method: GET
            rel: alternate
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.summary
        version: 1
    externalArtifactsOfDecisionFlow:
      description: External artifacts related to a decision flow.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: up
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/
            type: application/vnd.sas.decision
        name: external-artifacts
        accept: application/vnd.sas.decision.external.artifact
        count: 0
        items: []
        version: 2
    preConditionFailed:
      description: Pre-condition failed.
      value:
        httpStatusCode: 412
        version: 2
    decisionStepCodeOfSegmentationTreeRevision:
      description: The decision step code generated from a segmentation tree revision.
      value:
        creationTimeStamp: 2022-06-17T14:30:17.564Z
        modifiedTimeStamp: 2022-06-17T14:30:17.564Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 8fe79d4d-09e4-4ef8-8918-1323bb8ad4e1
        type: segmentationTree
        name: EvenChecker
        signature:
          - name: iseven
            dataType: integer
            direction: output
          - name: value
            dataType: integer
            direction: input
        links:
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions/8fe79d4d-09e4-4ef8-8918-1323bb8ad4e1
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions/8fe79d4d-09e4-4ef8-8918-1323bb8ad4e1
            type: application/vnd.sas.decision.segmentation.tree
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions/8fe79d4d-09e4-4ef8-8918-1323bb8ad4e1
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions/8fe79d4d-09e4-4ef8-8918-1323bb8ad4e1
        version: 1
    decisionStepCodeOfDecisionFlowRevision:
      description: Decision step code generated from decision flow revision.
      value:
        creationTimeStamp: 2021-05-07T16:06:05.631Z
        modifiedTimeStamp: 2021-05-07T16:06:22.755Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 77cfc1c3-f050-4169-939a-941e7c664215
        type: decision
        name: add_dec
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.decision
          - method: DELETE
            rel: delete
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
          - method: GET
            rel: code
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
            type: text/vnd.sas.source.ds2
          - method: POST
            rel: mappedCode
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
            type: application/vnd.sas.score.code.generation.request
            responseType: application/vnd.sas.score.mapped.code
          - method: GET
            rel: externalArtifacts
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: decision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
        version: 1
    resourceSummaryOfSegmentationTreeRevisions:
      description: Segmentation tree revisions with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: first
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
        name: segmentationTreeRevisions
        accept: application/vnd.sas.summary
        start: 1
        items:
          - creationTimeStamp: 2022-03-21T17:50:56.124Z
            modifiedTimeStamp: 2022-03-21T17:50:56.126Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
            type: segmentationTree
            name: EvenChecker
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.summary
            version: 2
        limit: 1
        version: 2
    createOrUpdateDecisionCodeFileWithCode:
      description: Creating or updating a decision code file with code.
      value:
        name: add_cf
        type: decisionDS2CodeFile
        code: >
          package "${PACKAGE_NAME}" /inline;
              method execute(double a, double c, in_out double b);
              b=a+c;
             end;
          endpackage;
    resourceSummaryOfDecisionFlows:
      description: Decision flows with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows?sortBy=name&start=2&limit=1
            uri: /decisions/flows?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/flows?sortBy=name&start=0&limit=1
            uri: /decisions/flows?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/flows?sortBy=name&start=1&limit=1
            uri: /decisions/flows?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/flows?sortBy=name&start=3&limit=1
            uri: /decisions/flows?sortBy=name&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: createDecision
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: decisions
        accept: application/vnd.sas.summary
        start: 2
        count: 5
        items:
          - creationTimeStamp: 2021-05-07T16:06:56.319Z
            modifiedTimeStamp: 2021-05-07T16:06:56.319Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: decision
            name: add_dec
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
              - method: GET
                rel: alternate
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.summary
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.summary
            version: 2
        limit: 1
        version: 2
    fullDetailsOfSegmentationTree:
      description: A segmentation tree with full details.
      value:
        creationTimeStamp: 2022-03-18T01:42:10.472Z
        modifiedTimeStamp: 2022-03-18T01:42:10.473Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: b11a2b86-8b0b-419a-92ab-edd62881aaa5
        name: EvenChecker
        majorRevision: 1
        minorRevision: 0
        signature:
          - name: iseven
            dataType: boolean
            direction: output
          - name: value
            dataType: integer
            direction: input
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
        matrices: []
        booleanExpressions:
          - name: even_check
            expression: mod(value, 2) = 0
        node:
          type: booleanExpression
          id: 4a464942-1f81-4b11-9f41-6b841d06dafc
          label: even_check
          valueNodes:
            - id: a392e3f7-5779-48c4-885d-24e12714e384
              label: "true"
              value: "true"
              outcomeName: even
            - id: 4706f443-f458-4411-9a1f-d82f062dacc5
              label: "false"
              value: "false"
              outcomeName: odd
          booleanExpressionName: even_check
        folderType: folder
        checkout: false
        locked: false
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
          - method: PUT
            rel: update
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        version: 1
    decisionComponentsWithTags:
      description: Tag merge decision components.
      value:
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/decisionComponentsWithTags
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/decisionComponentsWithTags
            type: application/vnd.sas.collection+json
          - method: GET
            rel: up
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.decision
        name: decisionComponentsWithTags
        accept: application/vnd.sas.decision.tag.merge.component
        count: 2
        items:
          - name: codeFile1
            uri: /decisions/codeFiles/edf7ba2a-ab5e-40ef-92bc-6e05b4204496
            modifiedTimeStamp: 2022-02-22T22:22:22.222Z
            parentDecisions:
              - name: decision1
                uri: /decisions/flows/b94c5b85-1289-4312-aaed-9f8becb0bd14/revisions/e63f47ca-5fc5-4de8-a276-1bee61a23a0d
              - name: decision2
                uri: /decisions/flows/a94c5b85-1289-4312-aaed-9f8becb0bd14/revisions/e63f47ca-5fc5-4de8-a276-1bee61a23a0d
            revisions:
              - majorRevision: 1
                minorRevision: 2
                id: e63f47ca-5fc5-4de8-a276-1bee61a23a0d
                tags:
                  - Q1_Tax_Changes
                  - Q1_Legal_Updates
              - majorRevision: 1
                minorRevision: 1
                id: c63f47ca-5fc5-4de8-a276-1bee61a23a0d
                tags:
                  - Q1_Tax_Changes
          - name: ruleset1
            uri: /businessRules/ruleSets/30b9a282-c38c-4163-907c-594bbe87fef0
            modifiedTimeStamp: 2022-02-22T22:02:22.202Z
            parentDecisions:
              - name: decision1
                uri: /decisions/flows/b94c5b85-1289-4312-aaed-9f8becb0bd14/revisions/e63f47ca-5fc5-4de8-a276-1bee61a23a0d
              - name: decision2
                uri: /decisions/flows/a94c5b85-1289-4312-aaed-9f8becb0bd14/revisions/e63f47ca-5fc5-4de8-a276-1bee61a23a0d
            revisions:
              - majorRevision: 1
                minorRevision: 1
                id: c63f47ca-5fc5-4de8-a276-1bee61a23a0d
                tags:
                  - Q1_Tax_Changes
        version: 2
    fullDetailsOfDecisionNodeTypeContentRest:
      description: Decision node type with content from REST endpoint with full details.
      value:
        creationTimeStamp: 2021-05-07T18:33:04.846Z
        modifiedTimeStamp: 2021-05-07T18:33:04.846Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 15af2c7d-f162-4c76-949f-842940d636c5
        nodeTypeId: a86ded32-73bd-434d-9f89-29ba4a90c131
        contentType: DS2
        restContent:
          uri: /myCustomTypeService/myCustomTypes
          objectTypeName: myCustomType
          editorAppId: myCustomTypesApp
          versioned: true
        links:
          - method: GET
            rel: self
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            responseType: application/vnd.sas.decision.node.type.content
    createOrUpdateDecisionFlowWithBranchRangeExpression:
      description: Decision flow with a step branch and range operators.
      value:
        name: My Decision With a Branch Range
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: 99 - 999==>GEN==>
                  compoundCondition:
                    booleanOperator: AND
                    lhsSimpleCondition:
                      lhsConditionExpression: '"my_input" + 200'
                      lhsConditionExpressionType: integer
                      operator: ">="
                      rhsConstant: "99"
                    rhsSimpleCondition:
                      lhsConditionExpression: '"my_input" + 200'
                      lhsConditionExpressionType: integer
                      operator: <=
                      rhsConstant: "999"
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: range
              name: Range
    createOrUpdateDecisionCodeFile:
      description: Creating or updating a decision code file.
      value:
        name: add_cf
        type: decisionDS2CodeFile
        fileUri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9
    createOrUpdateDecisionFlowWithBranchEquals:
      description: Decision flow with a step branch and equals operator.
      value:
        name: My Decision With a Branch Equals
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.branch
              branchCases:
                - label: 1001==>GEN==>
                  simpleCondition:
                    lhsTerm:
                      name: my_input
                    operator: =
                    rhsConstant: "1001"
                  onTrue:
                    steps:
                      - type: application/vnd.sas.decision.step.custom.object
                        publishedModule: {}
                        customObject:
                          uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                          name: My DS2 Code File
                          type: decisionDS2CodeFile
                        mappings:
                          - targetDecisionTermName: my_input
                            direction: input
                            stepTermName: my_input
                          - targetDecisionTermName: my_output
                            direction: output
                            stepTermName: my_output
              defaultCase:
                steps: []
              branchType: equals
              name: Equals
    createOrUpdateDecisionNodeTypeContentRest:
      description: Creating or updating a decision node type with content from a REST endpoint.
      value:
        contentType: DS2
        restContent:
          uri: /myCustomTypeService/myCustomTypes
          objectTypeName: myCustomType
          editorAppId: myCustomTypesApp
          versioned: true
    decisionTypeCollection:
      description: Collection of decision types
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flowTypes
            uri: /decisions/flowTypes
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: GET
            rel: first
            href: /decisions/flowTypes?sortBy=name&start=0&limit=1
            uri: /decisions/flowTypes?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: GET
            rel: prev
            href: /decisions/flowTypes?sortBy=name&start=1&limit=1
            uri: /decisions/flowTypes?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: GET
            rel: next
            href: /decisions/flowTypes?sortBy=name&start=3&limit=1
            uri: /decisions/flowTypes?sortBy=name&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: GET
            rel: self
            href: /decisions/flowTypes?sortBy=name&start=2&limit=1
            uri: /decisions/flowTypes?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: POST
            rel: createDecisionType
            href: /decisions/flowTypes
            uri: /decisions/flowTypes
            type: application/vnd.sas.decision.type
            responseType: application/vnd.sas.decision.type
        name: decisionTypes
        accept: application/vnd.sas.decision.type
        start: 2
        count: 5
        items:
          - id: d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
            name: Fraud
            l10nKey: SASFraudManagement-SASDecisionManager-gui-icu.underThirtyMs.type.label
            denyDecisionNodeTypes:
              - ruleSet
            allowDecisionNodeTypes:
              - 98879d99-4aaf-4d40-b18a-483659ffc32
              - d28e6407-6f5a-4839-8c39-d505cebff6b8
            createdBy: sasdemo
            creationTimeStamp: 2021-10-25T17:12:50.202000Z
            modifiedBy: sasdemo
            modifiedTimeStamp: 2021-10-25T17:12:50.202000Z
            links:
              - method: GET
                rel: self
                href: /decisions/flowTypes/d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
                uri: /decisions/flowTypes/d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
                type: application/vnd.sas.decision.type
            version: 1
        limit: 1
        version: 2
    ds2CodeOfSegmentationTree:
      description: The code generated from a segmentation tree.
      value: >
        package SegmentationTree /inline;
            dcl package logger m_logger('App.SASSegmentationTrees');
            dcl int _isDebugEnabled;
            dcl package logger logr_variableTrace('App.TableServices.DS2.Runtime.TraceVariables');
            dcl double _double_value;
            dcl varchar(100) _string_value;

            /* matrix "matrix1" */
            dcl varchar(100) matrix_values_0[3, 5];


            method SegmentationTree();
                _isDebugEnabled = m_logger.islevelactive(3);

                /* matrix "matrix1" */
                matrix_values_0[1,1] = '1<-->1';
                matrix_values_0[1,2] = '1<-->2';
                matrix_values_0[1,3] = '1<-->3';
                matrix_values_0[1,4] = '1<-->4';
                matrix_values_0[1,5] = '1<-->5';
                matrix_values_0[2,1] = '2<-->1';
                matrix_values_0[2,2] = '2<-->2';
                matrix_values_0[2,3] = '2<-->3';
                matrix_values_0[2,4] = '2<-->4';
                matrix_values_0[2,5] = '2<-->5';
                matrix_values_0[3,1] = '3<-->1';
                matrix_values_0[3,2] = '3<-->2';
                matrix_values_0[3,3] = '3<-->3';
                matrix_values_0[3,4] = '3<-->4';
                matrix_values_0[3,5] = '3<-->5';

            end;

            /* boolean expression "boolean_expression_1" */
            method boolean_expression_0(
                in_out varchar "var_string_input_1",
                in_out double ret_val
            );
                ret_val = var_string_input_1>1;
            end;

            /* boolean expression "boolean_expression_2" */
            method boolean_expression_1(
                in_out varchar "var_string_input_1",
                in_out double ret_val
            );
                ret_val = var_string_input_1>2;
            end;

            /* boolean expression "boolean_expression_3" */
            method boolean_expression_2(
                in_out varchar "var_string_input_1",
                in_out double ret_val
            );
                ret_val = var_string_input_1>3;
            end;

            /* boolean expression "boolean_expression_4" */
            method boolean_expression_3(
                in_out varchar "var_string_input_1",
                in_out double ret_val
            );
                ret_val = var_string_input_1>4;
            end;

            /* boolean expression "boolean_expression_5" */
            method boolean_expression_4(
                in_out varchar "var_string_input_1",
                in_out double ret_val
            );
                ret_val = var_string_input_1>5;
            end;


            /* matrix matrix1 */
            method matrix_0(
                in_out varchar "var_string_input_1",
                in_out varchar "var_string_input_2",
                in_out varchar ret_val
            );
                dcl double down_index;
                dcl double across_index;

                down_index = -1;
                across_index = -1;
                ret_val = 'others';

                if(_string_value in (>'23')) then down_index = 0;
                else if(_string_value in (>'23')) then down_index = 1;
                else if(_string_value in (>'23')) then down_index = 2;

                if(_string_value in (<'45')) then across_index = 0;
                else if(_string_value in (<'45')) then across_index = 1;
                else if(_string_value in (<'45')) then across_index = 2;
                else if(_string_value in (<'45')) then across_index = 3;
                else if(_string_value in (<'45')) then across_index = 4;

                if(down_index ^= -1 and across_index ^= -1) then ret_val = matrix_values_0[down_index,across_index];
            end;

            method outcome_0(
                in_out double "var_decimal_output_1" ,
                in_out double "var_decimal_output_2" ,
                in_out double "var_decimal_output_3" ,
                in_out varchar "var_string_input_1" ,
                in_out varchar "var_string_input_2" ,
                in_out varchar "var_string_input_3"
            );
                "var_string_input_1" = 'ksk_1';

                "var_string_input_2" = 'ksk_2';

                "var_string_input_3" = 'ksk_3';

                /* code_assigment_action_1 */
                var_decimal_output_1 = 0;

                /* code_assigment_action_2 */
                var_decimal_output_2 = 1000;

                /* code_assigment_action_3 */
                var_decimal_output_3 = 2000;


            end;

            method execute(
                double "var_boolean_input_1",
                double "var_boolean_input_2",
                double "var_boolean_input_3",
                double "var_date_input_1",
                double "var_date_input_2",
                double "var_date_input_3",
                double "var_datetime_input_1",
                double "var_datetime_input_2",
                double "var_datetime_input_3",
                double "var_decimal_input_1",
                double "var_decimal_input_2",
                double "var_decimal_input_3",
                double "var_integer_input_1",
                double "var_integer_input_2",
                double "var_integer_input_3",
                in_out varchar "var_string_input_1",
                in_out varchar "var_string_input_2",
                in_out varchar "var_string_input_3",
                in_out double "var_boolean_inOut_1",
                in_out double "var_boolean_inOut_2",
                in_out double "var_boolean_inOut_3",
                in_out double "var_boolean_output_1",
                in_out double "var_boolean_output_2",
                in_out double "var_boolean_output_3",
                in_out double "var_date_inOut_1",
                in_out double "var_date_inOut_2",
                in_out double "var_date_inOut_3",
                in_out double "var_date_output_1",
                in_out double "var_date_output_2",
                in_out double "var_date_output_3",
                in_out double "var_datetime_inOut_1",
                in_out double "var_datetime_inOut_2",
                in_out double "var_datetime_inOut_3",
                in_out double "var_datetime_output_1",
                in_out double "var_datetime_output_2",
                in_out double "var_datetime_output_3",
                in_out double "var_decimal_inOut_1",
                in_out double "var_decimal_inOut_2",
                in_out double "var_decimal_inOut_3",
                in_out double "var_decimal_output_1",
                in_out double "var_decimal_output_2",
                in_out double "var_decimal_output_3",
                in_out double "var_integer_inOut_1",
                in_out double "var_integer_inOut_2",
                in_out double "var_integer_inOut_3",
                in_out double "var_integer_output_1",
                in_out double "var_integer_output_2",
                in_out double "var_integer_output_3",
                in_out varchar "var_string_inOut_1",
                in_out varchar "var_string_inOut_2",
                in_out varchar "var_string_inOut_3",
                in_out varchar "var_string_output_1",
                in_out varchar "var_string_output_2",
                in_out varchar "var_string_output_3"
            );
                _double_value = "var_decimal_output_1";
                if("var_decimal_output_1"  >1) then
                    /* boolean expression boolean_expression_2 */
                    boolean_expression_1(
                        "var_string_input_1",
                        _double_value
                    );
                    if(_double_value = 1) then
                        /* matrix matrix1 */
                        matrix_0(
                            "var_string_input_1",
                            "var_string_input_2",
                            _string_value
                        );
                        if(_string_value = '2<-->1') then
                            /* outcome outcome_1 */
                            outcome_0(
                                "var_decimal_output_1" ,
                                "var_decimal_output_2" ,
                                "var_decimal_output_3" ,
                                "var_string_input_1" ,
                                "var_string_input_2" ,
                                "var_string_input_3"
                            );
                    else if(_double_value = 1) then
                        /* outcome outcome_1 */
                        outcome_0(
                            "var_decimal_output_1" ,
                            "var_decimal_output_2" ,
                            "var_decimal_output_3" ,
                            "var_string_input_1" ,
                            "var_string_input_2" ,
                            "var_string_input_3"
                        );
                else if("var_decimal_output_1"  >2) then
                    /* boolean expression boolean_expression_2 */
                    boolean_expression_1(
                        "var_string_input_1",
                        _double_value
                    );
                    if(_double_value = 1) then
                        /* matrix matrix1 */
                        matrix_0(
                            "var_string_input_1",
                            "var_string_input_2",
                            _string_value
                        );
                        if(_string_value = '2<-->1') then
                            /* outcome outcome_1 */
                            outcome_0(
                                "var_decimal_output_1" ,
                                "var_decimal_output_2" ,
                                "var_decimal_output_3" ,
                                "var_string_input_1" ,
                                "var_string_input_2" ,
                                "var_string_input_3"
                            );
                    else if(_double_value = 1) then
                        /* outcome outcome_1 */
                        outcome_0(
                            "var_decimal_output_1" ,
                            "var_decimal_output_2" ,
                            "var_decimal_output_3" ,
                            "var_string_input_1" ,
                            "var_string_input_2" ,
                            "var_string_input_3"
                        );
                else if("var_decimal_output_1"  >3) then
                    /* boolean expression boolean_expression_2 */
                    boolean_expression_1(
                        "var_string_input_1",
                        _double_value
                    );
                    if(_double_value = 1) then
                        /* matrix matrix1 */
                        matrix_0(
                            "var_string_input_1",
                            "var_string_input_2",
                            _string_value
                        );
                        if(_string_value = '2<-->1') then
                            /* outcome outcome_1 */
                            outcome_0(
                                "var_decimal_output_1" ,
                                "var_decimal_output_2" ,
                                "var_decimal_output_3" ,
                                "var_string_input_1" ,
                                "var_string_input_2" ,
                                "var_string_input_3"
                            );
                    else if(_double_value = 1) then
                        /* outcome outcome_1 */
                        outcome_0(
                            "var_decimal_output_1" ,
                            "var_decimal_output_2" ,
                            "var_decimal_output_3" ,
                            "var_string_input_1" ,
                            "var_string_input_2" ,
                            "var_string_input_3"
                        );
            end;

        endpackage;
    decisionValidationErrorsDecisionRevisionFlow:
      description: Decision validation errors related to decision flow revision.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/revisions/af149b13-dfd8-4422-80cf-7889da963e78/errors
            uri: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/revisions/af149b13-dfd8-4422-80cf-7889da963e78/errors
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.validation.error
          - method: GET
            rel: self
            href: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/revisions/af149b13-dfd8-4422-80cf-7889da963e78/errors?start=0&limit=10
            uri: /decisions/flows/c886c6c8-38a3-4897-ab38-69ac50074858/revisions/af149b13-dfd8-4422-80cf-7889da963e78/errors?start=0&limit=10
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.validation.error
        name: decisionValidationErrors
        accept: application/vnd.sas.decision.validation.error
        start: 0
        count: 3
        items:
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            variableId: ae39c528-6769-41d1-865b-fd617a8ee52a
            variableName: add_gv
            itemType: variable
            errorCode: 77022
            errorMessage: Global variable is not activated.
            version: 1
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            stepId: 38cb283b-ecd9-4c45-b3a5-3500f4173ecb
            stepName: add_rs
            itemType: application/vnd.sas.decision.step.ruleset
            errorCode: 77021
            errorMessage: Signature of the resource in the step has changed.
            version: 1
          - decisionId: c886c6c8-38a3-4897-ab38-69ac50074858
            decisionRevisionId: af149b13-dfd8-4422-80cf-7889da963e78
            decisionName: add_dec
            stepId: 38cb283b-ecd9-4c45-b3a5-3500f4173ecb
            stepName: add_rs
            stepMappingId: a8ef2325-84ad-4c52-808f-38a975e2f613
            stepMappingName: a
            itemType: mapping
            errorCode: 77024
            errorMessage: The mapping is not assigned.
            version: 1
        limit: 10
        version: 2
    validateValidExpression:
      description: Valid decision expression.
      value:
        expression: ABS(a) + my_custom_function(b, c) + DATAGRID_COUNT(d) = 2112
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: string
            direction: input
          - name: d
            dataType: dataGrid
            direction: input
    createOrUpdateDecisionFlowWithTreatmentGroup:
      description: Decision flow a treatment group.
      value:
        name: My Decision With a Treatment Group
        signature:
          - direction: output
            name: Myu20Treatmentu20Definitionu20Group_out
            dataType: dataGrid
            dataGridExtension:
              - name: treatment_definition_group_id
                dataType: string
                length: 36
              - name: treatment_definition_group_revision_id
                dataType: string
                length: 36
              - name: treatment_definition_id
                dataType: string
                length: 36
              - name: treatment_definition_revision_id
                dataType: string
                length: 36
              - name: treatment_definition_name
                dataType: string
                length: 250
              - name: m_attribute
                dataType: decimal
          - direction: input
            name: my_attribute
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              mappingDataGridName: Myu20Treatmentu20Definitionu20Group_out
              customObject:
                uri: /treatmentDefinitions/definitionGroups/af211677-4c28-4303-8bb3-8f7c11385cbd/revisions/@active
                name: My Treatment Definition Group
                type: treatmentGroup
              mappings:
                - targetDataGridTermName: treatment_definition_group_id
                  direction: output
                  stepTermName: treatment_definition_group_id
                - targetDataGridTermName: treatment_definition_group_revision_id
                  direction: output
                  stepTermName: treatment_definition_group_revision_id
                - targetDataGridTermName: treatment_definition_id
                  direction: output
                  stepTermName: treatment_definition_id
                - targetDataGridTermName: treatment_definition_revision_id
                  direction: output
                  stepTermName: treatment_definition_revision_id
                - targetDataGridTermName: treatment_definition_name
                  direction: output
                  stepTermName: treatment_definition_name
                - targetDecisionTermName: my_attribute
                  direction: input
                  stepTermName: my_attribute
                - targetDataGridTermName: m_attribute
                  direction: output
                  stepTermName: my_attribute
    createOrUpdateDecisionFlowWithSubDecision:
      description: Decision flow with a sub-decision.
      value:
        name: My Decision With Sub-Decision
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              customObject:
                uri: /decisions/flows/6ac132aa-fe1a-4fa4-82fb-99a5eda088af/revisions/186b3805-f9be-4d3b-88ea-712a273a8a02
                name: My Sub-Decision
                type: decision
              mappings:
                - targetDecisionTermName: my_input
                  direction: input
                  stepTermName: my_input
                - targetDecisionTermName: my_output
                  direction: output
                  stepTermName: my_output
    decisionStepCodeOfDecisionCodeFile:
      description: Decision code file with decision step code details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.420Z
        modifiedTimeStamp: 2021-05-06T20:21:04.882Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: cd404a82-af5b-4835-9672-9730470a6be8
        type: decisionDS2CodeFile
        name: add_cf
        code: >
          /*{"signatureExtension":[]}*/

          package "${PACKAGE_NAME}" /inline;
             method execute(double a, double b, in_out double c);
                  c=a+b;
             end;
          endpackage;
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
          - method: GET
            rel: revisions
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
        version: 1
    scoreCodeGenerationRequestForDecisionCodeFile:
      description: Score code generation request.
      value:
        scoreDefinitionId: 2d7d079d-963f-4c5e-a920-262accd4eb9e
        hints:
          tableBaseName: add_test_
    fullDetailsOfDecisionFlows:
      description: Decision flows with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: first
            href: /decisions/flows?sortBy=name&start=0&limit=1
            uri: /decisions/flows?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: prev
            href: /decisions/flows?sortBy=name&start=1&limit=1
            uri: /decisions/flows?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: next
            href: /decisions/flows?sortBy=name&start=3&limit=1
            uri: /decisions/flows?sortBy=name&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows?sortBy=name&start=2&limit=1
            uri: /decisions/flows?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: createDecision
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: decisions
        accept: application/vnd.sas.decision
        start: 2
        count: 5
        items:
          - creationTimeStamp: 2021-05-07T16:06:56.319Z
            modifiedTimeStamp: 2021-05-07T16:06:56.319Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
            name: add_dec
            majorRevision: 1
            minorRevision: 5
            signature:
              - creationTimeStamp: 2021-05-07T16:04:52.928Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: ab71e7ea-abe8-4a69-afd5-4a2ba65ef5c8
                direction: input
                name: a
                dataType: decimal
              - creationTimeStamp: 2021-05-07T16:04:52.929Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: d6b357c6-e798-48b1-ad42-bb3db4cfa774
                direction: input
                name: b
                dataType: decimal
              - creationTimeStamp: 2021-05-07T16:04:52.929Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: 8de5614b-48c2-4631-b819-ecc3e63ee0a6
                direction: output
                name: c
                dataType: decimal
            flow:
              creationTimeStamp: 2021-05-07T16:06:56.326Z
              modifiedTimeStamp: 2021-05-07T16:06:56.326Z
              createdBy: sasdemo
              modifiedBy: sasdemo
              id: 0b77ae9e-dcc7-4c7f-91c4-e725cd30092e
              steps:
                - type: application/vnd.sas.decision.step.custom.object
                  creationTimeStamp: 2021-05-07T16:06:56.328Z
                  modifiedTimeStamp: 2021-05-07T16:06:56.328Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 5da31100-8063-4dae-8b6d-dbc5965328d9
                  publishedModule: {}
                  customObject:
                    uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                    name: add_cf
                    type: decisionDS2CodeFile
                  mappings:
                    - creationTimeStamp: 2021-05-07T16:06:56.329Z
                      modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: 6bdfc780-9183-4fce-bddf-74fa0be6edae
                      targetDecisionTermName: a
                      direction: input
                      stepTermName: a
                    - creationTimeStamp: 2021-05-07T16:06:56.329Z
                      modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: 8fa3a412-ed91-4560-8b9a-8311a9daab32
                      targetDecisionTermName: b
                      direction: input
                      stepTermName: b
                    - creationTimeStamp: 2021-05-07T16:06:56.329Z
                      modifiedTimeStamp: 2021-05-07T16:06:56.329Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: c965a73c-97d6-4d5f-a2c4-dbf54c690144
                      targetDecisionTermName: c
                      direction: output
                      stepTermName: c
                  links:
                    - method: GET
                      rel: customObjectCode
                      href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                      uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                      responseType: application/vnd.sas.decision.step.code
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
              - method: GET
                rel: revisions
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.decision
              - method: GET
                rel: currentRevision
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
              - method: GET
                rel: code
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
                type: text/vnd.sas.source.ds2
              - method: POST
                rel: mappedCode
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
                type: application/vnd.sas.score.code.generation.request
                responseType: application/vnd.sas.score.mapped.code
              - method: GET
                rel: externalArtifacts
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.decision.external.artifact
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
              - method: PUT
                rel: update
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
                responseType: application/vnd.sas.decision
            nodeCount: 1
            folderType: userFolder
            sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
            copyTimeStamp: 2021-05-07T16:06:56.319Z
            checkout: false
            validationStatus: none
            version: 15
        limit: 1
        version: 2
    ds2CodeOfDecisionFlow:
      description: Code generated from a decision flow.
      value: >
        ds2_options scond=none;

        /* Custom Object add_cf retrieved on Fri May 07 16:25:43 UTC 2021 */

        /*{"signatureExtension":[]}*/

        package "add_dec_add_cf" /inline;
          method execute(double a, double b, in_out double c);
            c=a+b;
          end;
        endpackage;

        ds2_options scond=none;


        /* Decision add_dec version 1.5 generated on Fri May 07 16:25:43 UTC 2021 */

        package Decision_ba7b8073_83f7_41ae_827  / inline;
          dcl package logger logr_perf('App.tk.SID.Perf');
          dcl double timer_start;
          dcl double elapsed_time;
          dcl double total_timer_start;
          dcl double total_elapsed_time;

          dcl package "add_dec_add_cf" "add_dec_add_cf_hdl"();

          method initRuleFiredRecording();
            dcl integer ruleFiredStartPosition;

            /* query and set offsets - always traverse in same order as execute() method */
            ruleFiredStartPosition = 1;
          end;

          method init();
            initRuleFiredRecording();
          end;

          method execute (
              double "a"
              ,double "b"
              ,in_out double "c"
              ,in_out varchar "PathID"
              ,in_out char "ruleFiredFlags"
              ,in_out integer "rulesFiredForRecordCount"
              ,in_out integer "_filter_"

              );
            dcl integer dg_filter_;

            total_timer_start = datetime();

            timer_start = datetime();
            "add_dec_add_cf_hdl".execute("a", "b", "c");
            elapsed_time = datetime() - timer_start;
            logr_perf.log( 'd', 'Package Name: Decision_ba7b8073_83f7_41ae_827, Node Name: add_cf, Node ID: 5da31100-8063-4dae-8b6d-dbc5965328d9, NODE DURATION: ' .. elapsed_time);
                    if ("_filter_" = 0) then return;

                    "PathID" = "PathID" || '/' || '5da31100-8063-4dae-8b6d-dbc5965328d9';

            "end": /*label for decision node link to flow end*/

            total_elapsed_time = datetime() - total_timer_start;
            logr_perf.log( 'd', 'Package Name: Decision_ba7b8073_83f7_41ae_827, TOTAL DURATION: ' .. total_elapsed_time);

          end;
        endpackage;
    resourceSummaryOfDecisionCodeFileRevision:
      description: Decision code file revision with resource summary details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.490Z
        modifiedTimeStamp: 2021-05-06T20:21:04.490Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: f02aa26d-af06-4198-9705-2306bad711a1
        type: decisionDS2CodeFile
        name: add_cf
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/f02aa26d-af06-4198-9705-2306bad711a1
        version: 2
    mappedCodeOfDecisionFlow:
      description: Generated mapped code for a decision flow.
      value:
        code: >
          
          ds2_options scond=none;

          /* Custom Object add_cf retrieved on Fri May 07 16:53:12 UTC 2021 */

          /*{"signatureExtension":[]}*/

          package "add_dec_add_cf" ;
             method execute(double a, double b, in_out double c);
              c=a+b;
             end;
          endpackage;
              ds2_options scond=none;

          /* Decision add_dec version 1.5 generated on Fri May 07 16:53:12 UTC 2021 */
            package Decision_ba7b8073_83f7_41ae_827 ;
              dcl package logger logr_perf('App.tk.SID.Perf');
              dcl double timer_start;
              dcl double elapsed_time;
              dcl double total_timer_start;
              dcl double total_elapsed_time;

              dcl package "add_dec_add_cf" "add_dec_add_cf_hdl"();

              method initRuleFiredRecording();
                     dcl integer ruleFiredStartPosition;

                      /* query and set offsets - always traverse in same order as execute() method */
                      ruleFiredStartPosition = 1;
              end;

               method init();
                  initRuleFiredRecording();
               end;

              method execute (
                 double "a"
                ,double "b"
                ,in_out double "c"
                ,in_out varchar "PathID"
                ,in_out char "ruleFiredFlags"
                ,in_out integer "rulesFiredForRecordCount"
                ,in_out integer "_filter_"

              );
                  dcl integer dg_filter_;

                  total_timer_start = datetime();

                  timer_start = datetime();
                  "add_dec_add_cf_hdl".execute("a", "b", "c");
                  elapsed_time = datetime() - timer_start;
                  logr_perf.log( 'd', 'Package Name: Decision_ba7b8073_83f7_41ae_827, Node Name: add_cf, Node ID: 5da31100-8063-4dae-8b6d-dbc5965328d9, NODE DURATION: ' .. elapsed_time);
                  if ("_filter_" = 0) then return;

                  "PathID" = "PathID" || '/' || '5da31100-8063-4dae-8b6d-dbc5965328d9';

                  "end":/*label for decision node link to flow end*/

                  total_elapsed_time = datetime() - total_timer_start;
                  logr_perf.log( 'd', 'Package Name: Decision_ba7b8073_83f7_41ae_827, TOTAL DURATION: ' .. total_elapsed_time);

               end;
              endpackage;
              ds2_options scond=none;
            thread decisionFlowThread ;
               dcl package Decision_ba7b8073_83f7_41ae_827 decisionPackage();
               dcl varchar(38) "PathID";
               dcl char(1) "ruleFiredFlags";
               dcl integer       "rulesFiredForRecordCount" having label 'Rules Fired Count';
               dcl char(36)      "_recordCorrelationKey";

               dcl integer "_filter_";
               /* declare input terms not read in from SET statement */

               /* declare output terms not read in from SET statement */
               dcl double "c";

               /*declare static terms */
          dcl double "b";

          dcl double "a";

            keep

            "PathID" "ruleFiredFlags" "rulesFiredForRecordCount" "_recordCorrelationKey"
            "c"
              ;

              method resetruleFiredCounts( in_out char "ruleFiredFlags", in_out integer "rulesfiredforrecordcount");
                  "rulesfiredforrecordcount"=0;
              end;

              method init();
                decisionPackage.initRuleFiredRecording();
              end;

               method run();
                  dcl integer localRC;

                 set "Public"."DUAL"(
                    );

                  "b" = 3;
                  "a" = 2;

              "PathID" = '';

              resetruleFiredCounts("ruleFiredFlags", "rulesfiredforrecordcount");

              "_filter_" = 1;

              decisionPackage.execute(
                   "a"
                  ,"b"
                  ,"c"
                  ,"PathID"
                  ,"ruleFiredFlags", "rulesFiredForRecordCount"

                  ,"_filter_"
          );
              "_recordCorrelationKey" = uuidgen();

              output;
            end;
          endthread;

            ds2_options scond=none;

            data "Public"."add_dec_Scenario_1_add_dec_2021-05-07_16-53-11_output"(
                overwrite=yes);

              dcl thread decisionFlowThread t;

              method run();
                 set from t threads=4;
                 output "Public"."add_dec_Scenario_1_add_dec_2021-05-07_16-53-11_output";
              end;
            enddata;
        codeType: text/vnd.sas.source.ds2
        outputTableName: add_dec_Scenario_1_add_dec_2021-05-07_16-53-11_output
        outputLibraryName: Public
        version: 1
    revisionSummaryOfDecisionFlows:
      description: Decision flows with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows?sortBy=name&start=2&limit=1
            uri: /decisions/flows?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/flows?sortBy=name&start=0&limit=1
            uri: /decisions/flows?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/flows?sortBy=name&start=1&limit=1
            uri: /decisions/flows?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/flows?sortBy=name&start=3&limit=1
            uri: /decisions/flows?sortBy=name&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: createDecision
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: decisions
        accept: application/vnd.sas.dcm.summary
        start: 2
        count: 5
        items:
          - creationTimeStamp: 2021-05-07T16:06:56.319Z
            modifiedTimeStamp: 2021-05-07T16:06:56.319Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
            name: add_dec
            majorRevision: 1
            minorRevision: 5
            locked: false
            sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
            copyTimeStamp: 2021-05-07T16:06:56.319Z
            folderType: userFolder
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
              - method: GET
                rel: alternate
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.summary
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            version: 1
        limit: 1
        version: 2
    revisionSummaryOfDecisionCodeFile:
      description: Decision code file with revision summary details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.420Z
        modifiedTimeStamp: 2021-05-06T20:21:04.882Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: cd404a82-af5b-4835-9672-9730470a6be8
        name: add_cf
        majorRevision: 1
        minorRevision: 0
        locked: false
        sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
        copyTimeStamp: 2021-05-06T20:21:04.490Z
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
          - method: GET
            rel: revisions
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
        version: 1
    createOrUpdateDecisionFlowWithConditionExpression:
      description: Decision flow with a condition expression.
      value:
        name: My Decision With a Condition Expression
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.condition
              conditionExpression: my_input > 1000
              onTrue:
                steps:
                  - type: application/vnd.sas.decision.step.custom.object
                    customObject:
                      uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                      name: My DS2 Code File
                      type: decisionDS2CodeFile
                    mappings:
                      - targetDecisionTermName: my_input
                        direction: input
                        stepTermName: my_input
                      - targetDecisionTermName: my_output
                        direction: output
                        stepTermName: my_output
              onFalse:
                steps: []
    analysisCodeGenerationRequestForDecisionFlow:
      description: Analysis code generation request.
      value:
        scoreExecutionId: fc6e491b-fc28-49b7-9d6b-2f82af24ada9
        analysisType: decisionPathFrequency
        hints:
          tableBaseName: add_test_
    root:
      description: Decisions root content.
      value:
        version: 1
        links:
          - method: GET
            rel: decisions
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision
          - method: POST
            rel: createDecision
            href: /decisions/flows
            uri: /decisions/flows
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
          - method: GET
            rel: codeFiles
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision.code.file
          - method: POST
            rel: createCodeFile
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
          - method: GET
            rel: decisionNodeTypes
            href: /decisions/decisionNodeTypes
            uri: /decisions/decisionNodeTypes
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision.node.type
          - method: POST
            rel: createDecisionNodeType
            href: /decisions/decisionNodeTypes
            uri: /decisions/decisionNodeTypes
            type: application/vnd.sas.decision.node.type
            responseType: application/vnd.sas.decision.node.type
          - method: GET
            rel: getDecisionTypes
            href: /decisions/flowTypes
            uri: /decisions/flowTypes
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.type
          - method: POST
            rel: createDecisionType
            href: /decisions/flowTypes
            uri: /decisions/flowTypes
            type: application/vnd.sas.decision.type
            responseType: application/vnd.sas.decision.type
    termSummaryCollectionOfDecisions:
      description: A summary of terms
      value:
        name: items
        accept: application/vnd.sas.term.usage.summary
        version: 2
        items:
          - parentName: my_decision
            parentUri: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
            name: myTermName
            dataType: decimal
            direction: inOut
            links:
              - method: GET
                rel: self
                href: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
                uri: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
                type: application/vnd.sas.decision
          - parentName: my_decision
            parentUri: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
            name: dgWithColMyTermName
            dataType: dataGrid
            direction: inOut
            links:
              - method: GET
                rel: self
                href: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
                uri: /decisions/flows/2f280d53-1700-4752-9aa1-ff98513b9f8f
                type: application/vnd.sas.decision
    resourceSummaryOfDecisionFlowRevisions:
      description: Decision flow revisions with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: first
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: prev
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: next
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: POST
            rel: createRevision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: revisions
        accept: application/vnd.sas.summary
        start: 2
        count: 6
        items:
          - creationTimeStamp: 2021-05-07T16:06:05.631Z
            modifiedTimeStamp: 2021-05-07T16:06:22.755Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 77cfc1c3-f050-4169-939a-941e7c664215
            name: add_dec
            type: decision
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                type: application/vnd.sas.decision
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
              - method: GET
                rel: code
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                type: text/vnd.sas.source.ds2
              - method: POST
                rel: mappedCode
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                type: application/vnd.sas.score.code.generation.request
                responseType: application/vnd.sas.score.mapped.code
              - method: GET
                rel: decision
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
            version: 1
        limit: 1
        version: 2
    createOrUpdateDecisionFlowWithRuleset:
      description: Decision flow with a rule set.
      value:
        name: My Decision With a Rule Set
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.ruleset
              ruleset:
                id: 3f9d4ce0-520c-40e4-b349-71f0d886ead5
                versionId: f248ad15-162c-4162-848c-3df66da7435c
              mappings:
                - targetDecisionTermName: my_input
                  direction: input
                  stepTermName: my_input
                - targetDecisionTermName: my_output
                  direction: output
                  stepTermName: my_output
    createOrUpdateDecisionNodeTypeContentStatic:
      description: Creating or updating a decision node type with static content.
      value:
        contentType: DS2
        staticContent: >
          package "${PACKAGE_NAME}" /inline;
              method execute(double a, double c, in_out double b);
              b=a+c;
             end;
          endpackage;
        nodeTypeSignatureTerms:
          - name: a
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: output
    fullDetailsOfDecisionFlowRevisions:
      description: Decision flow revisions with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: first
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: prev
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: next
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions?filter=eq(decisionId,'e2cf4209-2661-4ef1-b77f-10b91a6420e3')&sortBy=majorNumber:ascending,minorNumber:ascending&start=3&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: POST
            rel: createRevision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        name: revisions
        accept: application/vnd.sas.decision
        start: 2
        count: 6
        items:
          - creationTimeStamp: 2021-05-07T16:06:05.631Z
            modifiedTimeStamp: 2021-05-07T16:06:22.755Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 77cfc1c3-f050-4169-939a-941e7c664215
            name: add_dec
            majorRevision: 1
            minorRevision: 2
            validationStatus: none
            signature:
              - creationTimeStamp: 2021-05-07T16:04:52.928Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: ab71e7ea-abe8-4a69-afd5-4a2ba65ef5c8
                direction: input
                name: a
                dataType: decimal
              - creationTimeStamp: 2021-05-07T16:04:52.929Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: d6b357c6-e798-48b1-ad42-bb3db4cfa774
                direction: input
                name: b
                dataType: decimal
              - creationTimeStamp: 2021-05-07T16:04:52.929Z
                modifiedTimeStamp: 2021-05-07T16:06:56.330Z
                createdBy: sasdemo
                modifiedBy: sasdemo
                id: 8de5614b-48c2-4631-b819-ecc3e63ee0a6
                direction: output
                name: c
                dataType: decimal
            flow:
              creationTimeStamp: 2021-05-07T16:06:05.643Z
              modifiedTimeStamp: 2021-05-07T16:06:05.643Z
              createdBy: sasdemo
              modifiedBy: sasdemo
              id: d246efaf-bd46-4437-8d66-2de3f012cce8
              steps:
                - type: application/vnd.sas.decision.step.custom.object
                  creationTimeStamp: 2021-05-07T16:06:05.646Z
                  modifiedTimeStamp: 2021-05-07T16:06:05.646Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 34be776f-971c-4fcb-9a6d-30bbceec62d5
                  publishedModule: {}
                  customObject:
                    uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                    name: add_cf
                    type: decisionDS2CodeFile
                  mappings:
                    - creationTimeStamp: 2021-05-07T16:06:05.646Z
                      modifiedTimeStamp: 2021-05-07T16:06:05.646Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: 2c6f4172-c189-4a59-bf43-92eba3bbe77c
                      targetDecisionTermName: a
                      direction: input
                      stepTermName: a
                    - creationTimeStamp: 2021-05-07T16:06:05.647Z
                      modifiedTimeStamp: 2021-05-07T16:06:05.647Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: 6110fe71-377a-4838-86e1-f12b70f42bba
                      targetDecisionTermName: b
                      direction: input
                      stepTermName: b
                    - creationTimeStamp: 2021-05-07T16:06:05.647Z
                      modifiedTimeStamp: 2021-05-07T16:06:05.647Z
                      createdBy: sasdemo
                      modifiedBy: sasdemo
                      id: 255b9815-a949-4c61-972f-d42f9002f1cb
                      targetDecisionTermName: c
                      direction: output
                      stepTermName: c
                  links:
                    - method: GET
                      rel: customObjectCode
                      href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                      uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                      responseType: application/vnd.sas.decision.step.code
            links:
              - method: GET
                rel: self
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                type: application/vnd.sas.decision
              - method: DELETE
                rel: delete
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
              - method: GET
                rel: code
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
                type: text/vnd.sas.source.ds2
              - method: POST
                rel: mappedCode
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
                type: application/vnd.sas.score.code.generation.request
                responseType: application/vnd.sas.score.mapped.code
              - method: GET
                rel: decision
                href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
                type: application/vnd.sas.decision
            version: 15
        limit: 1
        version: 2
    fullDetailsOfDecisionFlowRevision:
      description: Decision flow revision with full details.
      value:
        creationTimeStamp: 2021-05-07T16:06:05.631Z
        modifiedTimeStamp: 2021-05-07T16:06:22.755Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 77cfc1c3-f050-4169-939a-941e7c664215
        name: add_dec
        majorRevision: 1
        minorRevision: 2
        signature:
          - creationTimeStamp: 2021-05-07T16:04:52.928Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: ab71e7ea-abe8-4a69-afd5-4a2ba65ef5c8
            direction: input
            name: a
            dataType: decimal
          - creationTimeStamp: 2021-05-07T16:04:52.929Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: d6b357c6-e798-48b1-ad42-bb3db4cfa774
            direction: input
            name: b
            dataType: decimal
          - creationTimeStamp: 2021-05-07T16:04:52.929Z
            modifiedTimeStamp: 2021-05-07T16:06:56.330Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 8de5614b-48c2-4631-b819-ecc3e63ee0a6
            direction: output
            name: c
            dataType: decimal
        flow:
          creationTimeStamp: 2021-05-07T16:06:05.643Z
          modifiedTimeStamp: 2021-05-07T16:06:05.643Z
          createdBy: sasdemo
          modifiedBy: sasdemo
          id: d246efaf-bd46-4437-8d66-2de3f012cce8
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              creationTimeStamp: 2021-05-07T16:06:05.646Z
              modifiedTimeStamp: 2021-05-07T16:06:05.646Z
              createdBy: sasdemo
              modifiedBy: sasdemo
              id: 34be776f-971c-4fcb-9a6d-30bbceec62d5
              publishedModule: {}
              customObject:
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                name: add_cf
                type: decisionDS2CodeFile
              mappings:
                - creationTimeStamp: 2021-05-07T16:06:05.646Z
                  modifiedTimeStamp: 2021-05-07T16:06:05.646Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 2c6f4172-c189-4a59-bf43-92eba3bbe77c
                  targetDecisionTermName: a
                  direction: input
                  stepTermName: a
                - creationTimeStamp: 2021-05-07T16:06:05.647Z
                  modifiedTimeStamp: 2021-05-07T16:06:05.647Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 6110fe71-377a-4838-86e1-f12b70f42bba
                  targetDecisionTermName: b
                  direction: input
                  stepTermName: b
                - creationTimeStamp: 2021-05-07T16:06:05.647Z
                  modifiedTimeStamp: 2021-05-07T16:06:05.647Z
                  createdBy: sasdemo
                  modifiedBy: sasdemo
                  id: 255b9815-a949-4c61-972f-d42f9002f1cb
                  targetDecisionTermName: c
                  direction: output
                  stepTermName: c
              links:
                - method: GET
                  rel: customObjectCode
                  href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                  uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                  responseType: application/vnd.sas.decision.step.code
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.decision
          - method: DELETE
            rel: delete
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215
          - method: GET
            rel: code
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/code
            type: text/vnd.sas.source.ds2
          - method: POST
            rel: mappedCode
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/mappedCode
            type: application/vnd.sas.score.code.generation.request
            responseType: application/vnd.sas.score.mapped.code
          - method: GET
            rel: externalArtifacts
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions/77cfc1c3-f050-4169-939a-941e7c664215/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: GET
            rel: decision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
        decisionId: e2cf4209-2661-4ef1-b77f-10b91a6420e3
        nodeCount: 1
        folderType: userFolder
        sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
        copyTimeStamp: 2021-05-07T16:06:05.631Z
        checkout: false
        validationStatus: none
        version: 15
    mappedCodeOfDecisionCodeFile:
      description: Decision code file mapped code.
      value:
        code: >
          /*{"signatureExtension":[]}*/


          package CODE_FILE_SCORE /inline;



          /*end custom function code */


          method execute(double a, double b, in_out double c);
              c=a+b;
             end;
          endpackage;



          thread score_codefile_execution_thread ;

               dcl package CODE_FILE_SCORE codefiletest();
               dcl double "c";

               dcl double "a";
               dcl double "b";

               keep "c";
               method run();

                   dcl int localRC;

                   set "Public"."DUAL" (

                   );

                   "a" = 2;
                   "b" = 3;

                   codefiletest.execute(
                          "a"
                        , "b"
                        , "c"
                   );

                   output;
               end;
          endthread;



          data "Public"."add_cf_Scenario_1_add_cf_2021-05-07_00-51-51_output"

          (overwrite=yes);

              dcl thread score_codefile_execution_thread _t;
              method run();
                  set from _t threads=4;
                  output;
              end;
          enddata;
        codeType: text/vnd.sas.source.ds2
        outputTableName: add_cf_Scenario_1_add_cf_2021-05-07_00-51-51_output
        outputLibraryName: Public
        version: 1
    createOrUpdateDecisionFlowWithCodeFile:
      description: Decision flow with a code file.
      value:
        name: My Decision With a Code File
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.custom.object
              customObject:
                uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                name: My DS2 Code File
                type: decisionDS2CodeFile
              mappings:
                - targetDecisionTermName: my_input
                  direction: input
                  stepTermName: my_input
                - targetDecisionTermName: my_output
                  direction: output
                  stepTermName: my_output
    decisionStepCodeOfSegmentationTree:
      description: The decision step code for a segmentation tree.
      value:
        creationTimeStamp: 2022-06-17T14:30:17.548Z
        modifiedTimeStamp: 2022-06-17T14:30:17.548Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: d7ce21eb-b4ad-43d7-9fd1-199c2551d817
        type: segmentationTree
        name: EvenChecker
        signature:
          - name: iseven
            dataType: integer
            direction: output
          - name: value
            dataType: integer
            direction: input
        links:
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: revisions
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
          - method: PUT
            rel: update
            href: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
            uri: /decisions/segmentationTrees/d7ce21eb-b4ad-43d7-9fd1-199c2551d817
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        version: 1
    directCodeFileDependentObjects:
      description: Decision code file direct dependent objects
      value:
        uri: /decisions/codeFiles/bfc65ced-b02e-4faf-a9e5-463575c71c6d
        name: Calculate bias
        dependentUris:
          - /comments/comments/58bab699-0039-48a0-a68b-58bfb3b326e4
          - /comments/comments/1810d5fd-fdaa-4a81-aa4a-6d838c47ac25
          - /decisions/codeFiles/8f92126d-9d72-4273-ba5c-95bb0588e4d5
        version: 2
    decisionStepCodeOfDecisionFlow:
      description: Decision step code for a decision flow.
      value:
        creationTimeStamp: 2021-05-07T16:06:56.319Z
        modifiedTimeStamp: 2021-05-07T16:06:56.319Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: e2cf4209-2661-4ef1-b77f-10b91a6420e3
        type: decision
        name: add_dec
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: revisions
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/revisions
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision
          - method: GET
            rel: currentRevision
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: code
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/code
            type: text/vnd.sas.source.ds2
          - method: POST
            rel: mappedCode
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/mappedCode
            type: application/vnd.sas.score.code.generation.request
            responseType: application/vnd.sas.score.mapped.code
          - method: GET
            rel: externalArtifacts
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3/externalArtifacts
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.external.artifact
          - method: DELETE
            rel: delete
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
          - method: PUT
            rel: update
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
            responseType: application/vnd.sas.decision
        version: 1
    fullDetailsOfDecisionNodeTypeContentStatic:
      description: Decision node type with static content with full details.
      value:
        creationTimeStamp: 2021-05-07T18:33:04.846Z
        modifiedTimeStamp: 2021-05-07T18:33:04.846Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 19fc0c93-6494-4567-852c-82f5a535d674
        nodeTypeId: 044003f4-ab99-4be9-831b-40da3462b359
        contentType: DS2
        staticContent: >
          package "${PACKAGE_NAME}" /inline;
              method execute(double a, double c, in_out double b);
              b=a+c;
             end;
          endpackage;
        nodeTypeSignatureTerms:
          - name: a
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: self
            href: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
            uri: /decisions/decisionNodeTypes/044003f4-ab99-4be9-831b-40da3462b359/content
            responseType: application/vnd.sas.decision.node.type.content
    revisionSummaryOfSegmentationTree:
      description: A segmentation tree with revision summary details.
      value:
        creationTimeStamp: 2022-03-18T01:42:10.472Z
        modifiedTimeStamp: 2022-03-18T01:42:10.473Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: b11a2b86-8b0b-419a-92ab-edd62881aaa5
        name: EvenChecker
        majorRevision: 1
        minorRevision: 0
        locked: false
        folderType: folder
        links:
          - method: GET
            rel: up
            href: /decisions/segmentationTrees
            uri: /decisions/segmentationTrees
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: alternate
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.summary
          - method: DELETE
            rel: delete
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
          - method: PUT
            rel: update
            href: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            uri: /decisions/segmentationTrees/b11a2b86-8b0b-419a-92ab-edd62881aaa5
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
        version: 1
    decisionStepCodeOfDecisionNodeType:
      description: Decision step code for decision node type.
      value:
        creationTimeStamp: 2021-05-07T18:33:04.846Z
        modifiedTimeStamp: 2021-05-07T18:33:04.846Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 15af2c7d-f162-4c76-949f-842940d636c5
        type: dntStatic
        code: >
          package "${PACKAGE_NAME}" /inline;
              method execute(double a, double c, in_out double b);
              b=a+c;
             end;
          endpackage;
        signature:
          - name: a
            dataType: decimal
            direction: input
          - name: c
            dataType: decimal
            direction: input
          - name: b
            dataType: decimal
            direction: output
        links:
          - method: GET
            rel: self
            href: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            uri: /decisions/decisionNodeTypes/a86ded32-73bd-434d-9f89-29ba4a90c131/content
            responseType: application/vnd.sas.decision.node.type.content
        version: 1
    scoreCodeGenerationRequestUnboundForDecisionFlow:
      description: Score code generation request unbound.
      value:
        mappings:
          - mappingType: static
            mappingValue: 25
            variableName: a
        hints:
          tableBaseName: add_test_
    termSummaryCollection:
      description: The term usage summary for segmentation trees.
      value:
        name: items
        accept: application/vnd.sas.term.usage.summary
        items:
          - parentName: segmentationTree
            parentUri: /decisions/segmentationTrees/9636a324-5930-477d-9f4c-885a305cd7d2
            name: theDG
            dataType: dataGrid
            direction: inOut
            links:
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/9636a324-5930-477d-9f4c-885a305cd7d2
                uri: /decisions/segmentationTrees/9636a324-5930-477d-9f4c-885a305cd7d2
                type: application/vnd.sas.decision.segmentation.tree+json
        version: 2
    termSummaryCollectionOfCodeFiles:
      description: A summary of terms
      value:
        name: items
        accept: application/vnd.sas.term.usage.summary
        version: 2
        items:
          - parentName: my_code_file
            parentUri: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
            name: myTermName
            dataType: decimal
            direction: inOut
            links:
              - method: GET
                rel: self
                href: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
                uri: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
                type: application/vnd.sas.decision.code.file
          - parentName: my_code_file
            parentUri: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
            name: dgWithColMyTermName
            dataType: dataGrid
            direction: inOut
            links:
              - method: GET
                rel: self
                href: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
                uri: /decisions/codeFiles/2f280d53-1700-4752-9aa1-ff98513b9f8f
                type: application/vnd.sas.decision.code.file
    revisionSummaryOfDecisionCodeFileRevisions:
      description: Decision code file revisions with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=3&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            uri: /decisions/codeFiles?filter=eq(codeFileId,'cd404a82-af5b-4835-9672-9730470a6be8')&start=0&limit=20
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.dcm.summary
        start: 3
        count: 5
        items:
          - creationTimeStamp: 2021-05-06T21:36:42.228Z
            modifiedTimeStamp: 2021-05-06T21:36:42.228Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: a956c407-8086-414f-984e-0c20d5de71bc
            name: add_cf
            majorRevision: 1
            minorRevision: 3
            locked: true
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T21:36:42.228Z
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
                uri: /files/files/cccfa23a-6943-42eb-8743-aa5d3ff0db9b/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/a956c407-8086-414f-984e-0c20d5de71bc
            version: 1
          - creationTimeStamp: 2021-05-06T21:37:00.131Z
            modifiedTimeStamp: 2021-05-06T21:37:00.131Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 66c99a48-0903-44ea-948f-7c711fde4291
            name: add_cf
            majorRevision: 1
            minorRevision: 4
            locked: false
            sourceRevisionUri: /decisions/codeFiles/57d3b887-472b-4bd5-a021-b6f336efed41/revisions/200b0999-08ae-4371-a06c-f08d8c246f64
            copyTimeStamp: 2021-05-06T21:37:00.131Z
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
                uri: /files/files/7916329a-4e35-4d3c-b865-de42eddc3bb1/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions/66c99a48-0903-44ea-948f-7c711fde4291
            version: 1
        limit: 20
        version: 2
    createOrUpdateSegmentationTreeWithBooleanExpressionNode:
      description: Create or update a segmentation tree with a Boolean expression node.
      value:
        name: EvenChecker
        signature:
          - name: value
            direction: input
            dataType: integer
          - name: iseven
            direction: output
            dataType: boolean
        node:
          type: booleanExpression
          booleanExpressionName: even_check
          valueNodes:
            - value: "true"
              outcomeName: even
            - value: "false"
              outcomeName: odd
        outcomes:
          - name: even
            actions:
              - type: variableAssignment
                variableName: iseven
                valueType: static
                value: true
          - name: odd
            actions:
              - type: variableAssignment
                variableName: iseven
                valueType: static
                value: false
        booleanExpressions:
          - name: even_check
            expression: mod(value, 2) = 0
    resourceSummaryOfDecisionCodeFile:
      description: Decision code file with resource summary details.
      value:
        creationTimeStamp: 2021-05-06T20:21:04.420Z
        modifiedTimeStamp: 2021-05-06T20:21:04.882Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: cd404a82-af5b-4835-9672-9730470a6be8
        type: decisionDS2CodeFile
        name: add_cf
        links:
          - method: GET
            rel: up
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: self
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: PUT
            rel: update
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.code.file
          - method: GET
            rel: alternate
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.summary
          - method: GET
            rel: content
            href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
            uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
          - method: GET
            rel: decisionStepCode
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            type: application/vnd.sas.decision.step.code
          - method: DELETE
            rel: delete
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
          - method: GET
            rel: revisions
            href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
            type: application/vnd.sas.collection
        version: 2
    notFound:
      description: Not found.
      value:
        httpStatusCode: 404
        version: 2
    decisionType:
      description: Decision type
      value:
        id: d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
        name: Fraud
        l10nKey: SASFraudManagement-SASDecisionManager-gui-icu.underThirtyMs.type.label
        denyDecisionNodeTypes:
          - ruleSet
        allowDecisionNodeTypes:
          - 98879d99-4aaf-4d40-b18a-483659ffc32
          - d28e6407-6f5a-4839-8c39-d505cebff6b8
        createdBy: sasdemo
        creationTimeStamp: 2021-10-25T17:12:50.202000Z
        modifiedBy: sasdemo
        modifiedTimeStamp: 2021-10-25T17:12:50.202000Z
        links:
          - method: GET
            rel: self
            href: /decisions/flowTypes/d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
            uri: /decisions/flowTypes/d243e6a3-36b6-4f5a-bdd0-5b17e7a9d71f
            type: application/vnd.sas.decision.type
        version: 1
    revisionSummaryOfSegmentationTreeRevisions:
      description: Segmentation tree revisions with revision summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: POST
            rel: create
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: first
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
          - method: GET
            rel: next
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.dcm.summary
        name: segmentationTreeRevisions
        accept: application/vnd.sas.dcm.summary
        start: 1
        items:
          - creationTimeStamp: 2022-03-21T17:50:56.124Z
            modifiedTimeStamp: 2022-03-21T17:50:56.126Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
            name: EvenChecker
            majorRevision: 1
            minorRevision: 4
            locked: true
            folderType: folder
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.summary
            version: 1
        limit: 1
        version: 2
    resourceSummaryOfDecisionCodeFiles:
      description: Decision code files with resource summary details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary application/vnd.sas.decision.code.file
          - method: GET
            rel: self
            href: /decisions/codeFiles?sortBy=name&start=1&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: first
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: prev
            href: /decisions/codeFiles?sortBy=name&start=0&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: GET
            rel: next
            href: /decisions/codeFiles?sortBy=name&start=2&limit=1
            uri: /decisions/codeFiles?sortBy=name&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.summary
          - method: POST
            rel: create
            href: /decisions/codeFiles
            uri: /decisions/codeFiles
            type: application/vnd.sas.decision.code.file
            responseType: application/vnd.sas.decision.code.file
        name: codeFiles
        accept: application/vnd.sas.summary
        start: 1
        count: 4
        items:
          - creationTimeStamp: 2021-05-06T20:21:04.420Z
            modifiedTimeStamp: 2021-05-06T20:21:04.882Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: cd404a82-af5b-4835-9672-9730470a6be8
            type: decisionDS2CodeFile
            name: add_cf
            links:
              - method: GET
                rel: up
                href: /decisions/codeFiles
                uri: /decisions/codeFiles
                type: application/vnd.sas.collection
                itemType: application/vnd.sas.summary
              - method: GET
                rel: self
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: PUT
                rel: update
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.code.file
              - method: GET
                rel: alternate
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.summary
              - method: GET
                rel: content
                href: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
                uri: /files/files/2110f410-bb15-41d4-a0a5-e707fececfe9/content
              - method: GET
                rel: decisionStepCode
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                type: application/vnd.sas.decision.step.code
              - method: DELETE
                rel: delete
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8
              - method: GET
                rel: revisions
                href: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                uri: /decisions/codeFiles/cd404a82-af5b-4835-9672-9730470a6be8/revisions
                type: application/vnd.sas.collection
            version: 2
        limit: 1
        version: 2
    revisionSummaryOfDecisionFlow:
      description: Decision flow with revision summary details.
      value:
        creationTimeStamp: 2021-05-07T16:06:56.319Z
        modifiedTimeStamp: 2021-05-07T16:06:56.319Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: ba7b8073-83f7-41ae-827d-b912d8c12a98
        name: add_dec
        majorRevision: 1
        minorRevision: 5
        locked: false
        sourceRevisionUri: /decisions/flows/ab9b6a31-7b81-4202-af3f-86be4b6a89ba/revisions/9aa1c575-76b6-4fbd-b865-eb7fb32065bf
        copyTimeStamp: 2021-05-07T16:06:56.319Z
        folderType: userFolder
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.decision
          - method: GET
            rel: alternate
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3
            type: application/vnd.sas.summary
        version: 1
    resourceSummaryOfDecisionFlowRevision:
      description: Decision flow revision with resource summary details.
      value:
        creationTimeStamp: 2021-05-07T16:06:05.631Z
        modifiedTimeStamp: 2021-05-07T16:06:22.755Z
        createdBy: sasdemo
        modifiedBy: sasdemo
        id: 77cfc1c3-f050-4169-939a-941e7c664215
        type: decision
        name: add_dec
        links:
          - method: GET
            rel: self
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.decision
          - method: GET
            rel: alternate
            href: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            uri: /decisions/flows/e2cf4209-2661-4ef1-b77f-10b91a6420e3revisions/77cfc1c3-f050-4169-939a-941e7c664215
            type: application/vnd.sas.summary
        version: 2
    createOrUpdateDecisionFlowWithCondition:
      description: Decision flow with a condition.
      value:
        name: My Decision With a Condition
        signature:
          - direction: input
            name: my_input
            dataType: decimal
          - direction: output
            name: my_output
            dataType: decimal
        flow:
          steps:
            - type: application/vnd.sas.decision.step.condition
              condition:
                lhsTerm:
                  name: my_input
                operator: ">"
                rhsConstant: "1000"
              onTrue:
                steps:
                  - type: application/vnd.sas.decision.step.custom.object
                    customObject:
                      uri: /decisions/codeFiles/34e54af1-c371-40b7-a186-7a3fcef7d033/revisions/b8fbb2d2-4046-423b-95e1-f9711b3ad26a
                      name: My DS2 Code File
                      type: decisionDS2CodeFile
                    mappings:
                      - targetDecisionTermName: my_input
                        direction: input
                        stepTermName: my_input
                      - targetDecisionTermName: my_output
                        direction: output
                        stepTermName: my_output
              onFalse:
                steps: []
    fullDetailsOfSegmentationTreeRevisions:
      description: Segmentation tree revisions with full details.
      value:
        links:
          - method: GET
            rel: collection
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.collection
          - method: GET
            rel: self
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=1&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: POST
            rel: create
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
            type: application/vnd.sas.decision.segmentation.tree
            responseType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: first
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: prev
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=0&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
          - method: GET
            rel: next
            href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions?sortBy=creationTimeStamp:descending&start=2&limit=1
            type: application/vnd.sas.collection
            itemType: application/vnd.sas.decision.segmentation.tree
        name: segmentationTreeRevisions
        accept: application/vnd.sas.decision.segmentation.tree
        start: 1
        items:
          - creationTimeStamp: 2022-03-21T17:50:56.124Z
            modifiedTimeStamp: 2022-03-21T17:50:56.126Z
            createdBy: sasdemo
            modifiedBy: sasdemo
            id: 8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
            name: EvenChecker
            majorRevision: 1
            minorRevision: 4
            signature:
              - name: iseven
                dataType: boolean
                direction: output
              - name: value
                dataType: integer
                direction: input
        codeFiles:
          - name: even
            type: internal
            code: iseven = 1;
          - name: odd
            type: internal
            code: iseven = 0;
        outcomes:
          - name: even
            actions:
              - type: codeAssignment
                codeFileName: even
          - name: odd
            actions:
              - type: codeAssignment
                codeFileName: odd
            matrices: []
            booleanExpressions: []
            node:
              type: variable
              id: 41dc875e-83c2-4714-80db-910aa267e6ce
              label: value
              valueNodes:
                - id: 6125ce01-1053-4a44-afc6-d084a7f69b85
                  label: mod(value, 2) = 0
                  value: mod(value, 2) = 0
                  outcomeName: even
                - id: 7d0cde39-103a-4c80-9c9b-0813d08077b1
                  label: mod(value, 2) = 1
                  value: mod(value, 2) = 1
                  outcomeName: odd
              variableName: value
            folderType: folder
            checkout: false
            locked: true
            links:
              - method: GET
                rel: up
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions
                type: application/vnd.sas.collection
              - method: GET
                rel: self
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.decision.segmentation.tree
              - method: GET
                rel: alternate
                href: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                uri: /decisions/segmentationTrees/7902e99f-2d49-4f67-891b-efc6a50912c5/revisions/8e518948-c1f3-4fc8-90ae-fbf184f0b2c4
                type: application/vnd.sas.summary
            version: 1
        limit: 1
        version: 2
