Visier Analytic Model APIs

Analytic Model APIs for querying and configuring the Visier data model: analytic objects, properties, metrics, dimensions, concepts, object configuration, and personalized alerts. 87 operations across 7 tags.

OpenAPI Specification

visier-analytic-model-apis-openapi.yaml Raw ↑
openapi: 3.0.3
info:
  title: Visier Analytic Model APIs
  description: Visier APIs for retrieving and configuring your analytic model in Visier.
  license:
    name: Apache License, Version 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: 22222222.99201.3040
paths:
  /v1/admin/calculation-concepts:
    get:
      tags:
        - ObjectConfiguration
      summary: Retrieve all calculation concepts
      description: Retrieve the calculation concepts available in production.
      operationId: ObjectConfiguration_GetCalculationConcepts
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.CalculationConceptListDTO'
  /v1/admin/calculation-concepts/{conceptId}:
    get:
      tags:
        - ObjectConfiguration
      summary: Retrieve the configuration of a calculation concept
      description: Retrieve the configuration details of a calculation concept in production.
      operationId: ObjectConfiguration_GetCalculationConcept
      parameters:
        - name: conceptId
          in: path
          description: The ID of the concept to retrieve the configuration for.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.CalculationConceptDTO'
  /v1/admin/calculation-concepts/{conceptId}/configure:
    put:
      tags:
        - ObjectConfiguration
      summary: Map dimension members to nodes in a calculation concept
      description: "Map dimension members to nodes in a calculation concept.\n The changes are applied in a new project and published to production.\n\n The body of this API is the source of truth for dimension members mapped to the concept. For example, if a node in\n the body does not have any dimension members, all existing dimension members mapped to that node will be removed."
      operationId: ObjectConfiguration_MapCalculationConcept
      parameters:
        - name: conceptId
          in: path
          description: The UUID of the concept to configure.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/designer.api.CalculationConceptConfigurationMapDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.ConceptConfigurationResultDTO'
  /v1/admin/selection-concepts:
    get:
      tags:
        - ObjectConfiguration
      summary: Retrieve all selection concepts
      description: Retrieve the selection concepts available in production.
      operationId: ObjectConfiguration_GetSelectionConcepts
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.SelectionConceptListDTO'
  /v1/admin/selection-concepts/{conceptId}:
    get:
      tags:
        - ObjectConfiguration
      summary: Retrieve the configuration of a selection concept
      description: Retrieve the configuration details of a selection concept in production.
      operationId: ObjectConfiguration_GetSelectionConcept
      parameters:
        - name: conceptId
          in: path
          description: The ID of the concept to retrieve the configuration for.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.SelectionConceptDTO'
  /v1/admin/selection-concepts/{conceptId}/configure:
    put:
      tags:
        - ObjectConfiguration
      summary: Map dimension members to a selection concept
      description: "Map dimension members to a selection concept.\n The changes are applied to a new project and published to production.\n\n The body of this API is the source of truth for dimension members mapped to the concept. For example, if a node in\n the body does not have any dimension members, all existing dimension members mapped to that node will be removed."
      operationId: ObjectConfiguration_MapSelectionConcept
      parameters:
        - name: conceptId
          in: path
          description: The UUID of the concept to configure.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/designer.api.SelectionConceptConfigurationMapDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.api.ConceptConfigurationResultDTO'
  /v1/data/model/analytic-objects:
    get:
      tags:
        - DataModel
      summary: Retrieve a list of analytic objects
      description: Retrieve all the analytic objects in your Visier solution.
      operationId: DataModel_AnalyticObjects
      parameters:
        - name: id
          in: query
          description: The IDs of the analytic objects to retrieve. Default is all analytic objects.
          schema:
            type: array
            items:
              type: string
        - name: objectType
          in: query
          description: The object type to filter the returned analytic objects by.
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.AnalyticObjectsDTO'
  /v1/data/model/analytic-objects/{id}:
    get:
      tags:
        - DataModel
      summary: Retrieve an analytic object by ID
      description: If you know the ID of an analytic object, use this API to retrieve that object specifically.
      operationId: DataModel_AnalyticObject
      parameters:
        - name: id
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.AnalyticObjectDTO'
  /v1/data/model/analytic-objects/{id}/metrics:
    get:
      tags:
        - DataModel
      summary: Retrieve a list of metrics for an analytic object by ID
      description: If you know the ID of an analytic object, use this API to retrieve metrics for that object specifically.
      operationId: DataModel_AnalyticMetrics
      parameters:
        - name: id
          in: path
          description: The ID of the analytic object to retrieve metrics for.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.MetricsDTO'
  /v1/data/model/analytic-objects/{objectId}/dimensions:
    get:
      tags:
        - DataModel
      summary: Retrieve a list of dimensions
      description: Retrieve a list of dimensions for a specific analytic object.
      operationId: DataModel_Dimensions
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: The IDs of the dimensions to retrieve. Default is all dimensions.
          schema:
            type: array
            items:
              type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.DimensionsDTO'
  /v1/data/model/analytic-objects/{objectId}/dimensions/{dimensionId}/mappings/validate:
    post:
      tags:
        - DataModel
      summary: Validate a member map's unmapped dimension members by ID
      description: "If you know the ID of a member map, use this API to validate one of the member map's dimensions. \n You must also know the dimension's ID and the analytic object's ID. \n The response returns the member map ID, the requested dimension ID, a list of the dimension's unmapped members, and a list of errors found."
      operationId: DataModel_DimensionMemberMapValidation
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object.
          required: true
          schema:
            type: string
        - name: dimensionId
          in: path
          description: The ID of a dimension of the member map.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dataservices.datamodel.DimensionMappingValidationExecutionDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.DimensionMappingValidationDTO'
  /v1/data/model/analytic-objects/{objectId}/dimensions/{dimensionId}/members:
    get:
      tags:
        - DataModel
      summary: Retrieve a list of dimension members
      description: "If you know the ID of a dimension, use this API to retrieve the members of that dimension specifically. You must\n also know the analytic object's ID. Dimension members exist in a hierarchy. The levels in the hierarchy may be\n fixed or non-uniform. Leveled dimensions have fixed hierarchies, while parent-child dimensions have non-uniform\n levels. When you retrieve dimension members with this API, the response returns the level of the dimension and the\n path to get to that level. For example, in a Location dimension, Vancouver is 3 levels deep:\n\n - All > Canada > British Columbia > Vancouver\n\n Parent-child hierarchies are non-uniform and exhibit distinct characteristics such as time dependence and data\n attributes. These traits reflect the dynamic nature of hierarchies, for example, organizational hierarchies. The API\n response includes elements that express the validity ranges for retrieved members."
      operationId: DataModel_Members
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object.
          required: true
          schema:
            type: string
        - name: dimensionId
          in: path
          description: The ID of the dimension.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: The IDs of the members to retrieve. Default is all members.
          schema:
            type: array
            items:
              type: string
        - name: maxLevel
          in: query
          description: The maximum level in the hierarchy to fetch. The top level of the hierarchy is 0. Default is all levels.
          schema:
            type: integer
            format: int32
        - name: filter
          in: query
          description: A regular expression that members must match to be retrieved. Default is to retrieve all members.
          schema:
            type: string
        - name: field
          in: query
          description: "Indicates the aspect of the member to apply the filter to. Possible values are:\n - **id**: Match the filter to the member ID.\n - **display**: Match the filter to the member's display name.\n - **either**: Match the filter to the member ID or display name.\n\n Default is `id`."
          schema:
            type: string
        - name: includeDataMembers
          in: query
          description: Indicates whether data members are included in the response. Parent-child dimensions only. Default is `false`.
          schema:
            type: boolean
        - name: offset
          in: query
          description: For paginated member requests against high-cardinality dimensions, the offset of the first member to retrieve. Default is 0. If the `offset` value is specified to a non-default value, all other non-pagination parameters are ignored.
          schema:
            type: integer
            format: int32
        - name: limit
          in: query
          description: For paginated member requests against high-cardinality dimensions, the maximum number of members to retrieve. Default is -1 to return up to 15,000 members. If the `limit` value is specified to a non-default value, all other non-pagination parameters are ignored. If pagination occurs, the response status code is 206.
          schema:
            type: integer
            format: int32
        - name: sortType
          in: query
          description: "The order of the members in the response. Valid values:\n - `configured`: Sorts the members according to their configuration. For parent-child dimensions, sorts members by name in ascending order. For other dimensions, sorts members by their configured order in Studio.\n - `natural`: Does not sort the members. This is the default."
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.MembersDTO'
  /v1/data/model/analytic-objects/{objectId}/dimensions/{dimensionId}/members/{id}:
    get:
      tags:
        - DataModel
      summary: Retrieve a dimension member
      description: If you know the ID of a dimension member, use this API to retrieve that dimension member specifically. You must also know the dimension's ID and the analytic object's ID.
      operationId: DataModel_Member
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object.
          required: true
          schema:
            type: string
        - name: dimensionId
          in: path
          description: The ID of the dimension.
          required: true
          schema:
            type: string
        - name: id
          in: path
          required: true
          schema:
            type: string
        - name: Id
          in: query
          description: The ID of the member to retrieve.
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.MembersDTO'
  /v1/data/model/analytic-objects/{objectId}/dimensions/{id}:
    get:
      tags:
        - DataModel
      summary: Retrieve a dimension by ID
      description: If you know the ID of a dimension, use this API to retrieve that dimension specifically. You must also know the analytic object's ID.
      operationId: DataModel_Dimension
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: The ID of the dimension to retrieve.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.DimensionDTO'
  /v1/data/model/analytic-objects/{objectId}/properties:
    get:
      tags:
        - DataModel
      summary: Retrieve a list of properties
      description: Retrieve a list of properties for a specific analytic object.
      operationId: DataModel_Properties
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: The IDs of the properties to retrieve. Default is all properties.
          schema:
            type: array
            items:
              type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.PropertiesDTO'
  /v1/data/model/analytic-objects/{objectId}/properties/{id}:
    get:
      tags:
        - DataModel
      summary: Retrieve a property by ID
      description: If you know the ID of a property, use this API to retrieve that property specifically. You must also know the analytic object's ID..
      operationId: DataModel_Property
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: The ID of the property to retrieve.
          required: true
          schema:
            type: array
            items:
              type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.PropertyDTO'
  /v1/data/model/analytic-objects/{objectId}/selection-concepts:
    get:
      tags:
        - DataModel
      summary: Retrieve an analytic object's selection concepts
      description: Retrieve a list of selection concepts for a specific analytic object.
      operationId: DataModel_SelectionConcepts
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: The IDs of the selection concepts to retrieve. Default is all selection concepts.
          schema:
            type: array
            items:
              type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.SelectionConceptsDTO'
  /v1/data/model/analytic-objects/{objectId}/selection-concepts/{id}:
    get:
      tags:
        - DataModel
      summary: Retrieve an analytic object's selection concept by ID
      description: If you know the ID of a selection concept, use this API to retrieve that selection concept specifically. You must also know the analytic object's ID.
      operationId: DataModel_SelectionConcept
      parameters:
        - name: objectId
          in: path
          description: The ID of the analytic object to retrieve.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: The ID of the selection concept to retrieve.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
            format: uuid
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dataservices.datamodel.SelectionConceptDTO'
  /v1/data/model/currencies:
    get:
      tags:
        - DataModel
      summary: Retrieve all currencies
      description: Retrieve all the available currencies in your Visier solution.
      operationId: DataModel_Currencies
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
        - name: ProjectID
          in: header
          description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version.
          schema:
            type: string
         

# --- truncated at 32 KB (341 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/visier/refs/heads/main/openapi/visier-analytic-model-apis-openapi.yaml