Skip to content

Documentation / @ember-data/rest / query

Call Signature

ts
function query<T>(
   type, 
   query?, 
options?): QueryRequestOptions<CollectionResourceDataDocument<T>, T>;

Defined in: query.ts:57

Builds request options to query for resources, usually by a primary type, configured for the url and header expectations of most REST APIs.

Basic Usage

ts
import { query } from '@ember-data/rest/request';

const data = await store.request(query('person'));

With Query Params

ts
import { query } from '@ember-data/rest/request';

const options = query('person', { include: ['pets', 'friends'] });
const data = await store.request(options);

Supplying Options to Modify the Request Behavior

The following options are supported:

  • host - The host to use for the request, defaults to the host configured with setBuildURLConfig.
  • namespace - The namespace to use for the request, defaults to the namespace configured with setBuildURLConfig.
  • resourcePath - The resource path to use for the request, defaults to pluralizing and camelCasing the supplied type
  • reload - Whether to forcibly reload the request if it is already in the store, not supplying this option will delegate to the store's CachePolicy, defaulting to false if none is configured.
  • backgroundReload - Whether to reload the request if it is already in the store, but to also resolve the promise with the cached value, not supplying this option will delegate to the store's CachePolicy, defaulting to false if none is configured.
  • urlParamsSettings - an object containing options for how to serialize the query params (see buildQueryParams)
ts
import { query } from '@ember-data/rest/request';

const options = query('person', { include: ['pets', 'friends'] }, { reload: true });
const data = await store.request(options);

Type Parameters

T

T

Parameters

type

TypeFromInstance<T>

query?

QueryParamsSource

options?

ConstrainedRequestOptions

Returns

QueryRequestOptions<CollectionResourceDataDocument<T>, T>

Call Signature

ts
function query(
   type, 
   query?, 
   options?): QueryRequestOptions;

Defined in: query.ts:62

Builds request options to query for resources, usually by a primary type, configured for the url and header expectations of most REST APIs.

Basic Usage

ts
import { query } from '@ember-data/rest/request';

const data = await store.request(query('person'));

With Query Params

ts
import { query } from '@ember-data/rest/request';

const options = query('person', { include: ['pets', 'friends'] });
const data = await store.request(options);

Supplying Options to Modify the Request Behavior

The following options are supported:

  • host - The host to use for the request, defaults to the host configured with setBuildURLConfig.
  • namespace - The namespace to use for the request, defaults to the namespace configured with setBuildURLConfig.
  • resourcePath - The resource path to use for the request, defaults to pluralizing and camelCasing the supplied type
  • reload - Whether to forcibly reload the request if it is already in the store, not supplying this option will delegate to the store's CachePolicy, defaulting to false if none is configured.
  • backgroundReload - Whether to reload the request if it is already in the store, but to also resolve the promise with the cached value, not supplying this option will delegate to the store's CachePolicy, defaulting to false if none is configured.
  • urlParamsSettings - an object containing options for how to serialize the query params (see buildQueryParams)
ts
import { query } from '@ember-data/rest/request';

const options = query('person', { include: ['pets', 'friends'] }, { reload: true });
const data = await store.request(options);

Parameters

type

string

query?

QueryParamsSource

options?

ConstrainedRequestOptions

Returns

QueryRequestOptions

Released under the MIT License.