/filters/{id}/dimensions/{name}
GET
Return details of a specific dimension within a filter
Responses
200: A Dimension within a filter was returned
Example value
{
"properties": {
"filter": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
},
"id": {
"description": "The id of the dimension",
"type": "string",
"readOnly": true
},
"name": {
"description": "The name of the dimension",
"type": "string",
"readOnly": true
},
"options": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
},
"self": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
}
}
}
400: Filter was not found
Example value
null
404: Dimension name was not found
Example value
null
500: Failed to process the request due to an internal error
Example value
null
POST
Add a dimension to filter with a list of options
Parameters
Name | Type | Description |
---|---|---|
options | body | A list of options for a dimension to filter the dataset |
If-Match | header | Filter resource version, as returned by a previous ETag, to be validated; or '*' to skip the version check |
id | path | The unique filter ID for customising a dataset |
name | path | The name of a dimension |
Responses
201: The dimension was created
Example value
{
"properties": {
"filter": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
},
"id": {
"description": "The id of the dimension",
"type": "string",
"readOnly": true
},
"name": {
"description": "The name of the dimension",
"type": "string",
"readOnly": true
},
"options": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
},
"self": {
"properties": {
"href": {
"description": "link to resource",
"type": "string"
},
"id": {
"description": "id of resource",
"type": "string"
}
}
}
}
}
400: Invalid request body
Example value
null
404: Filter job was not found
Example value
null
409: #/responses/FilterConflict
Example value
null
422: Unprocessable entity - instance has been removed
Example value
null
500: Failed to process the request due to an internal error
Example value
null
DELETE
Remove a dimension and any options set within the dimension
Parameters
Name | Type | Description |
---|---|---|
If-Match | header | Filter resource version, as returned by a previous ETag, to be validated; or '*' to skip the version check |
id | path | The unique filter ID for customising a dataset |
name | path | The name of a dimension |
Responses
204: The dimension was removed
Example value
null
400: Filter was not found
Example value
null
404: Dimension name was not found
Example value
null
409: #/responses/FilterConflict
Example value
null
500: Failed to process the request due to an internal error
Example value
null
PATCH
Patch a list of dimension options for a filter. This endpoint is available for CMD filter types only.
Parameters
Name | Type | Description |
---|---|---|
patch | body | A list of options for a dimension to filter the dataset |
If-Match | header | Filter resource version, as returned by a previous ETag, to be validated; or '*' to skip the version check |
id | path | The unique filter ID for customising a dataset |
name | path | The name of a dimension |
Responses
200: The dimension was patched and the list of dimension options are returned
Example value
{
"description": "A list of operations to patch dimension to filter on a dataset. Can only handle adding or removing values from options array, each element in array is processed in sequential order. Method Patch does not abide by any existing rfc standard, yet this was adapted from rfc6902 standard.",
"type": "object",
"properties": {
"op": {
"description": "The operation to be made on path.\n* add - Adding multiple values that are the same or already in resource will not be appended to array.\n* remove - Removing values that do not exist in array will not result in failure\n",
"type": "string",
"enum": [
"add",
"remove"
]
},
"path": {
"description": "Path to value that needs to be operated on. The special '-' key is the indicator of an array at a specific path",
"type": "string",
"example": "/options/-"
},
"value": {
"description": "A list of values defined by the operation value. 'op' to define the update against array",
"type": "array",
"items": {
"type": "string"
}
}
}
}
400: Invalid request body, filter job does not exist or too many values have been provided in the patch operations
Example value
null
401: Unauthorised, request lacks valid authentication credentials
Example value
null
404: Dimension was not found
Example value
null
409: #/responses/FilterConflict
Example value
null
422: Unprocessable entity - instance has been removed
Example value
null
500: Failed to process the request due to an internal error
Example value
null