Capabilities

The capabilities endpoint provides metadata about the features which the data connector (and data source) support.

Request

GET /capabilities

Response

See CapabilitiesResponse

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

NameDescription
versionA semantic version number of this specification which the data connector claims to implement
capabilitiesThe capabilities that this connector supports, see below

Capabilities Fields

These fields are set underneath the capabilities property on the CapabilitiesResponse object:

NameDescription
mutation.explainWhether the data connector is capable of describing mutation plans
mutation.transactionalWhether the data connector is capable of executing multiple mutations in a transaction
query.aggregatesWhether the data connector supports aggregate queries. The schema capabilities.query.aggregates should also be returned.
query.aggregates.filter_byWhether the data connector supports filtering by aggregated values
query.aggregates.group_byWhether the data connector supports grouping operations
query.aggregates.group_by.filterWhether the data connector supports filtering on groups
query.aggregates.group_by.orderWhether the data connector supports ordering on groups
query.aggregates.group_by.paginateWhether the data connector supports pagination on groups
query.exists.named_scopesWhether the data connector supports named scopes in exists expressions
query.exists.nested_collectionsWhether the data connector supports exists expressions against nested collections
query.exists.nested_scalar_collectionsWhether the data connector supports exists expressions against nested scalar collections
query.exists.unrelatedWhether the data connector supports exists expressions against unrelated collections
query.explainWhether the data connector is capable of describing query plans
query.nested_fields.aggregatesWhether the data connector is capable of aggregating fields in nested objects
query.nested_fields.filter_byWhether the data connector is capable of filtering by nested fields
query.nested_fields.filter_by.nested_arraysWhether the data connector is capable of filtering over nested arrays using array_comparison expressions
query.nested_fields.filter_by.nested_arrays.containsWhether the data connector is capable of filtering over nested arrays using the contains operator
query.nested_fields.filter_by.nested_arrays.is_emptyWhether the data connector is capable of filtering over nested arrays using the is empty operator
query.nested_fields.nested_collectionsWhether the data connector supports nested collection field queries
query.nested_fields.order_byWhether the data connector is capable of ordering by nested fields
query.variablesWhether the data connector supports queries with variables
relationshipsWhether the data connector supports relationships
relationships.nestedWhether the data connector supports relationships that can start from or end with columns in nested objects
relationships.nested.arrayWhether the data connector supports relationships that can start from columns inside nested objects inside nested arrays
relationships.nested.filteringWhether the data connector supports using relationships that can start from columns inside nested objects while filtering
relationships.nested.orderingWhether the data connector supports using relationships that can start from columns inside nested objects while ordering
relationships.order_by_aggregateWhether order by clauses can include aggregates
relationships.relation_comparisonsWhether comparisons between two columns can include a value column that is across a relationship

See also