Capabilities
The capabilities endpoint provides metadata about the features which the data connector (and data source) support.
Request
GET /capabilities
Response
Example
{
"version": "0.2.0",
"capabilities": {
"query": {
"aggregates": {
"filter_by": {},
"group_by": {
"filter": {},
"order": {},
"paginate": {}
}
},
"variables": {},
"nested_fields": {
"filter_by": {
"nested_arrays": {
"contains": {},
"is_empty": {}
}
},
"order_by": {},
"aggregates": {},
"nested_collections": {}
},
"exists": {
"named_scopes": {},
"unrelated": {},
"nested_collections": {},
"nested_scalar_collections": {}
}
},
"mutation": {},
"relationships": {
"relation_comparisons": {},
"order_by_aggregate": {},
"nested": {
"array": {},
"filtering": {},
"ordering": {}
}
}
}
}
Response Fields
Name | Description |
---|---|
version | A semantic version number of this specification which the data connector claims to implement |
capabilities | The capabilities that this connector supports, see below |
Capabilities Fields
These fields are set underneath the capabilities
property on the CapabilitiesResponse
object:
Name | Description |
---|---|
mutation.explain | Whether the data connector is capable of describing mutation plans |
mutation.transactional | Whether the data connector is capable of executing multiple mutations in a transaction |
query.aggregates | Whether the data connector supports aggregate queries. The schema capabilities.query.aggregates should also be returned. |
query.aggregates.filter_by | Whether the data connector supports filtering by aggregated values |
query.aggregates.group_by | Whether the data connector supports grouping operations |
query.aggregates.group_by.filter | Whether the data connector supports filtering on groups |
query.aggregates.group_by.order | Whether the data connector supports ordering on groups |
query.aggregates.group_by.paginate | Whether the data connector supports pagination on groups |
query.exists.named_scopes | Whether the data connector supports named scopes in exists expressions |
query.exists.nested_collections | Whether the data connector supports exists expressions against nested collections |
query.exists.nested_scalar_collections | Whether the data connector supports exists expressions against nested scalar collections |
query.exists.unrelated | Whether the data connector supports exists expressions against unrelated collections |
query.explain | Whether the data connector is capable of describing query plans |
query.nested_fields.aggregates | Whether the data connector is capable of aggregating fields in nested objects |
query.nested_fields.filter_by | Whether the data connector is capable of filtering by nested fields |
query.nested_fields.filter_by.nested_arrays | Whether the data connector is capable of filtering over nested arrays using array_comparison expressions |
query.nested_fields.filter_by.nested_arrays.contains | Whether the data connector is capable of filtering over nested arrays using the contains operator |
query.nested_fields.filter_by.nested_arrays.is_empty | Whether the data connector is capable of filtering over nested arrays using the is empty operator |
query.nested_fields.nested_collections | Whether the data connector supports nested collection field queries |
query.nested_fields.order_by | Whether the data connector is capable of ordering by nested fields |
query.variables | Whether the data connector supports queries with variables |
relationships | Whether the data connector supports relationships |
relationships.nested | Whether the data connector supports relationships that can start from or end with columns in nested objects |
relationships.nested.array | Whether the data connector supports relationships that can start from columns inside nested objects inside nested arrays |
relationships.nested.filtering | Whether the data connector supports using relationships that can start from columns inside nested objects while filtering |
relationships.nested.ordering | Whether the data connector supports using relationships that can start from columns inside nested objects while ordering |
relationships.order_by_aggregate | Whether order by clauses can include aggregates |
relationships.relation_comparisons | Whether comparisons between two columns can include a value column that is across a relationship |
See also
- Type
Capabilities
- Type
CapabilitiesResponse
- Type
QueryCapabilities
- Type
NestedFieldCapabilities
- Type
MutationCapabilities
- Type
RelationshipCapabilities