GET/desk/api/v2/meta/resources.json

Get the capability manifest: every queryable resource, its fields, and which

of them can be filtered, sorted and aggregated.

The document is identical for every session — it describes the vocabulary, not data, which is why it needs no credential — so it is served with a strong ETag over its own hash and is safe to cache until the ETag changes.

Responses

  • Code
    200
    Type
    object
    Schema
    Description
    200 OK
    Manifest is the capability manifest: the API's query vocabulary, derived from the same struct tags the filter parser, the ordering and the aggregation resolve against. It describes the vocabulary, which is identical for every session — it is not data, and not what a given session may see. Nothing in it is installation- or user-dependent, which is what makes it cacheable and what keeps it from being an inference channel into anyone's grants.
  • Code
    304
    Description
    304 Not Modified No Data

Examples

200 OK

Manifest
{
  "parameters": {
    "aggregate": {
      "notes": "string",
      "syntax": "string"
    },
    "fields": {
      "notes": "string",
      "syntax": "string"
    },
    "filter": {
      "notes": "string",
      "syntax": "string"
    },
    "groupBy": {
      "notes": "string",
      "syntax": "string"
    },
    "having": {
      "notes": "string",
      "syntax": "string"
    },
    "id": {
      "notes": "string",
      "syntax": "string"
    },
    "ids": {
      "notes": "string",
      "syntax": "string"
    },
    "includes": {
      "notes": "string",
      "syntax": "string"
    },
    "notes": "string",
    "orderBy": {
      "notes": "string",
      "syntax": "string"
    },
    "orderMode": {
      "notes": "string",
      "syntax": "string"
    },
    "page": {
      "notes": "string",
      "syntax": "string"
    },
    "pageOffset": {
      "notes": "string",
      "syntax": "string"
    },
    "pageSize": {
      "notes": "string",
      "syntax": "string"
    },
    "skipAggregation": {
      "notes": "string",
      "syntax": "string"
    }
  },
  "resources": [
    {
      "examples": {
        "aggregate": [
          "string"
        ],
        "fields": [
          "string"
        ],
        "filter": [
          "string"
        ],
        "groupBy": [
          "string"
        ],
        "having": [
          "string"
        ],
        "orderBy": [
          "string"
        ],
        "request": "string"
      },
      "fields": [
        {
          "column": "string",
          "computed": true,
          "enum": [
            "string"
          ],
          "in": "string",
          "indexed": true,
          "name": "string",
          "notes": "string",
          "nullable": true,
          "queryOnly": true,
          "readonly": true,
          "relatedTo": "string",
          "type": "string"
        }
      ],
      "idField": "string",
      "includeSections": {
        "additionalProp": "string"
      },
      "includes": [
        "string"
      ],
      "indexes": {
        "tuples": [
          [
            "string"
          ]
        ]
      },
      "name": "string",
      "parameters": {
        "aggregate": {
          "notes": "string",
          "syntax": "string"
        },
        "fields": {
          "notes": "string",
          "syntax": "string"
        },
        "filter": {
          "notes": "string",
          "syntax": "string"
        },
        "groupBy": {
          "notes": "string",
          "syntax": "string"
        },
        "having": {
          "notes": "string",
          "syntax": "string"
        },
        "id": {
          "notes": "string",
          "syntax": "string"
        },
        "ids": {
          "notes": "string",
          "syntax": "string"
        },
        "includes": {
          "notes": "string",
          "syntax": "string"
        },
        "notes": "string",
        "orderBy": {
          "notes": "string",
          "syntax": "string"
        },
        "orderMode": {
          "notes": "string",
          "syntax": "string"
        },
        "page": {
          "notes": "string",
          "syntax": "string"
        },
        "pageOffset": {
          "notes": "string",
          "syntax": "string"
        },
        "pageSize": {
          "notes": "string",
          "syntax": "string"
        },
        "skipAggregation": {
          "notes": "string",
          "syntax": "string"
        }
      },
      "path": "string",
      "sortOnly": [
        "string"
      ],
      "vocabulary": {
        "addressable": "string",
        "aggregations": [
          "string"
        ],
        "column": "string",
        "examples": "string",
        "grouping": {
          "aliases": "string",
          "buckets": [
            "string"
          ],
          "dates": "string",
          "having": {
            "notes": "string",
            "operators": [
              "string"
            ]
          },
          "maxGroups": 0,
          "maxKeys": 0,
          "maxMeasures": 0,
          "response": "string"
        },
        "indexes": "string",
        "multiValue": "string",
        "operatorNotes": {
          "additionalProp": "string"
        },
        "operators": [
          "string"
        ],
        "selectable": "string"
      }
    }
  ],
  "version": "string",
  "vocabulary": {
    "addressable": "string",
    "aggregations": [
      "string"
    ],
    "column": "string",
    "examples": "string",
    "grouping": {
      "aliases": "string",
      "buckets": [
        "string"
      ],
      "dates": "string",
      "having": {
        "notes": "string",
        "operators": [
          "string"
        ]
      },
      "maxGroups": 0,
      "maxKeys": 0,
      "maxMeasures": 0,
      "response": "string"
    },
    "indexes": "string",
    "multiValue": "string",
    "operatorNotes": {
      "additionalProp": "string"
    },
    "operators": [
      "string"
    ],
    "selectable": "string"
  }
}