Hierarchical Value Service API  future
api indexresource index

PUT {+table}/accessSequence

since: 0.1
Access levels within the sequence can be added, removed, or reordered. Reordering of the access levels within the sequence will not affect the availability of the data referenced by those levels. However, if an access level is removed, the data referenced by that access level will no longer be accessible.

Path Elements

+table
0.1required
string
The URI path to a specific table (whether by ID or by name).

Request Headers

pros-hvs-consistency
0.13optional
string
pros-hvs-consistency is an optional HTTP header used to define the data consistency level of the request. There is a trade off between data consistency and service availability and performance: higher data consistency can result in lower availability and slower performance, while lower data consistency can result in higher availability and faster performance.
0.13 valid values:
  • HIGHEST
  • HIGH
  • NORMAL
  • LOW
  • LOWEST
pros-rtpe-cache
0.35optional
string

pros-rtpe-cache is an optional HTTP header used to define the caching strategy used by Hierarchial Value Service for a request. This header helps control which internal caches should be used by the service when processing the request. There is a tradeoff between returning the most recent data and performance. Disabling caches will help ensure that the most recent data available are returned, but will likely increase the time required to process and respond to the request.

When disable.metadata is specified, caches related to table and dimension metadata will be disabled.

When disable.data is specified, caches related to table and dimension data will be disabled.

When disable.all is specified, all caches will be disabled.

When any cache is disabled, those caches will not be updated with values retrieved during a request.

0.35 valid values:
  • enable
  • disable.metadata
  • disable.data
  • disable.all

Resource Information

Request Content
json
Request Object
Response Content
json
Response Object
Success Statuses
200  OK
Error Statuses
400  BAD REQUEST

Example 1

Request:

    [
      {
        "accessLevel" : [
          {
            "dimID"    : "28484058-4ffc-329b-94ff-63e1ddbd7189",
            "aspectID" : "fbd99ad0-1b92-3baf-8686-772a39e3d065"
          },
          {
            "dimID"    : "c689acc7-ee13-3482-aa7b-c6a13419431c",
            "aspectID" : "85921462-8431-3951-97c0-558f7b5f8ffc"
          }
        ]
      },
      {
        "accessLevel" : [
          {
            "dimID"      : "28484058-4ffc-329b-94ff-63e1ddbd7189",
            "aspectID"   : "fbd99ad0-1b92-3baf-8686-772a39e3d065"
          },
          {
            "dimID"      : "c689acc7-ee13-3482-aa7b-c6a13419431c",
            "aspectID"   : "2b848a8c-c886-3253-921a-77c43cd50aae"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  200  OK


  {
    "id": "bb18498a-3228-425a-816c-481bac1030ca",
    "name":"Special Events",
    "columns" : [
      {
        "name" : "Forecasted Volume",
        "dataType" : "DECIMAL",
        "constraints" : [
        {
          "name" : "unitRequired",
          "type" : "BOOLEAN",
          "value" : true
        },
        "required" : true
      },
      {
        "name" : "Historic Revenue",
        "dataType" : "DECIMAL",
        "constraints" : [
        {
          "name" : "currencyRequired",
          "type" : "BOOLEAN",
          "value" : true
        },
        "required" : true
      },
      {
        "name" : "Product Cost",
        "dataType" : "DECIMAL",
        "constraints" : [
          {
            "name" : "unitRequired",
            "type" : "BOOLEAN",
            "value" : true
          },
          {
            "name" : "currencyRequired",
            "type" : "BOOLEAN",
            "value" : true
          }
        ],
        "required" : true
      },
      {
        "name" : "Competitor Influence",
        "dataType" : "STRING",
        "required" : false
      }
    ],
    "accessSequence" : [
      {
        "accessLevel" : [
          {
            "dimID"      : "28484058-4ffc-329b-94ff-63e1ddbd7189",
            "dimName"    : "SAMPLE_PRODUCTS",
            "aspectID"   : "fbd99ad0-1b92-3baf-8686-772a39e3d065",
            "aspectName" : "UPC"
          },
          {
            "dimID"      : "c689acc7-ee13-3482-aa7b-c6a13419431c",
            "dimName"    : "LARGE_CITIES",
            "aspectID"   : "85921462-8431-3951-97c0-558f7b5f8ffc",
            "aspectName" : "CITY"
          }
        ]
      },
      {
        "accessLevel" : [
          {
            "dimID"      : "28484058-4ffc-329b-94ff-63e1ddbd7189",
            "dimName"    : "SAMPLE_PRODUCTS",
            "aspectID"   : "fbd99ad0-1b92-3baf-8686-772a39e3d065",
            "aspectName" : "UPC"
          },
          {
            "dimID"      : "c689acc7-ee13-3482-aa7b-c6a13419431c",
            "dimName"    : "LARGE_CITIES",
            "aspectID"   : "2b848a8c-c886-3253-921a-77c43cd50aae",
            "aspectName" : "STATE"
          }
        ]
      }
    ],
    "dynamic"   : false,
    "createdBy" : "c3fb23a7-51d5-3f23-aae4-ea3ebcda987f"
  }

      

Error Example - Update access sequence with wrong dimension name

see: HVS-003022

Request:

    [
      {
        "accessLevel" : [
          {
            "dimName"    : "NON_EXIST_DIMENSION",
            "aspectName" : "UPC"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003022",
    "errorMessage": "The dimension NON_EXIST_DIMENSION was not found.",
    "resourceType": "table"
  }

      

Error Example - Update access sequence with wrong dimension id

see: HVS-003022

Request:

    [
      {
        "accessLevel" : [
          {
            "dimID"    : "00000000-0000-0000-0000-000000000000",
            "aspectName" : "UPC"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003022",
    "errorMessage": "The dimension 00000000-0000-0000-0000-000000000000 was not found.",
    "resourceType": "table"
  }

      

Error Example - Update access sequence with wrong dimension aspect name

see: HVS-003021

Request:

    [
      {
        "accessLevel" : [
          {
            "dimName"    : "SAMPLE_PRODUCTS",
            "aspectName" : "NON_EXIST_ASPECT"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003021",
    "errorMessage": "The specified dimension aspect NON_EXIST_ASPECT was not found for dimension: 28484058-4ffc-329b-94ff-63e1ddbd7189.",
    "resourceType": "table"
  }

      

Error Example - Update access sequence with wrong dimension aspect id

see: HVS-003021

Request:

    [
      {
        "accessLevel" : [
          {
            "dimName"    : "SAMPLE_PRODUCTS",
            "aspectID" : "00000000-0000-0000-0000-000000000000"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003021",
    "errorMessage": "The specified dimension aspect 00000000-0000-0000-0000-000000000000 was not found for dimension: 28484058-4ffc-329b-94ff-63e1ddbd7189.",
    "resourceType": "table"
  }

      

Error Example - Update access sequence without dimension name or id

see: HVS-003016

Request:

    [
      {
        "accessLevel" : [
          {
            "aspectName" : "UPC"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003016",
    "errorMessage": "An access sequence entry must contain a dimension name or ID, neither is set.",
    "resourceType": "table"
  }

      

Error Example - Update access sequence without dimension aspect name or id

see: HVS-003015

Request:

    [
      {
        "accessLevel" : [
          {
            "dimName"    : "SAMPLE_PRODUCTS"
          },
          {
            "dimName"    : "LARGE_CITIES",
            "aspectName" : "CITY"
          }
        ]
      }
    ]
    

Response:
HTTP/1.1  400  BAD REQUEST


  {
    "errorID": "HVS-003015",
    "errorMessage": "A dimension aspect must have an ID or name specified for an entry in the access sequence.",
    "resourceType": "table"
  }