# Admin API Contains objects used to interact with the Admin API. This object is returned as part of different contexts, such as [`admin`](/docs/api/shopify-app-remix/authenticate/admin), [`unauthenticated.admin`](/docs/api/shopify-app-remix/unauthenticated/unauthenticated-admin), and [`webhook`](/docs/api/shopify-app-remix/authenticate/webhook). ## admin Provides utilities that apps can use to make requests to the Admin API. ### AdminApiContext FeatureEnabled extends true ? AdminApiContextWithoutRest : AdminApiContextWithRest ### FeatureEnabled Future extends FutureFlags ? Future[Flag] extends true ? true : false : false ### FutureFlags ### removeRest When enabled, methods for interacting with the admin REST API will not be returned. This affects: * `authenticate.admin(request)` * `authenticate.webhook(request)` * `authenticate.flow(request)` * `authenticate.appProxy(request)` * `authenticate.fulfillmentService(request)` * `unauthenticated.admin(shop)` In a future release we will remove REST from the package completely. Please see: [https://www.shopify.com/ca/partners/blog/all-in-on-graphql](https://www.shopify.com/ca/partners/blog/all-in-on-graphql) ### unstable_newEmbeddedAuthStrategy When enabled, embedded apps will fetch access tokens via [token exchange](https://shopify.dev/docs/apps/auth/get-access-tokens/token-exchange). This assumes the app has scopes declared for [Shopify managing installation](https://shopify.dev/docs/apps/auth/installation#shopify-managed-installation). Learn more about this [new embedded app auth strategy](https://shopify.dev/docs/api/shopify-app-remix#embedded-auth-strategy). ### AdminApiContextWithoutRest ### graphql Methods for interacting with the Shopify Admin GraphQL API ### GraphQLClient #### Returns: interface Promise { /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): Promise; /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): Promise; }, interface Promise {}, Promise: PromiseConstructor, interface Promise { readonly [Symbol.toStringTag]: string; }, interface Promise { /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): Promise; } #### Params: - query: Operation extends keyof Operations - options: GraphQLQueryOptions export type GraphQLClient = < Operation extends keyof Operations, >( query: Operation, options?: GraphQLQueryOptions, ) => Promise>; ### GraphQLQueryOptions ### apiVersion The version of the API to use for the request. ### headers Additional headers to include in the request. ### tries The total number of times to try the request if it fails. ### variables The variables to pass to the operation. ### AdminApiContextWithRest ### graphql Methods for interacting with the Shopify Admin GraphQL API ### rest Methods for interacting with the Shopify Admin REST API ### RestClientWithResources RemixRestClient & {resources: Resources} ### RemixRestClient ### session ### get Performs a GET request on the given path. ### post Performs a POST request on the given path. ### put Performs a PUT request on the given path. ### delete Performs a DELETE request on the given path. ## Related - [Authenticated context](/docs/api/shopify-app-remix/authenticate/admin) - [Unauthenticated context](/docs/api/shopify-app-remix/unauthenticated/unauthenticated-admin)