> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt ## Resource: About the Wix GraphQL API ## Article: About the Wix GraphQL API ## Article Link: https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/platform/about-the-wix-graph-ql-api.md ## Article Content: # About the Wix GraphQL API > **Developer Preview:** This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period. The Wix GraphQL API exposes Wix APIs as a single unified GraphQL schema, allowing you to query and mutate Wix data with all the benefits of GraphQL. > New to GraphQL? Check out the [GraphQL Documentation](https://graphql.org/learn/) to learn more. ## Usage For the full documentation and API reference, see the [Wix GraphQL API Documentation](https://dev.wix.com/docs/graphql.md). ::::tabs :::SDK_TAB The SDK provides a `graphql()` method on an initialized [Wix client](https://dev.wix.com/docs/api-reference/articles/sdk-setup-and-usage/set-up-a-wix-client.md). This method accepts a GraphQL query or mutation and returns a `Promise` with the result. **Example:** ```js import { createClient, OAuthStrategy } from "@wix/sdk"; const wix = createClient({ auth: OAuthStrategy({ clientId: "YOUR_CLIENT_ID", }), }); const { data, errors } = await wix.graphql( ` query Products($filter: JSON!) { storesProductsV1Products(queryInput: { query: { filter: $filter }}) { items { name } } } `, { filter: { name: { $startsWith: query || "", }, }, } ); ``` #### Type inference The `graphql()` method also supports type inference for the result and variables of a GraphQL query. If you are using a solution for type inference in your project, such as [GraphQL Code Generator](https://the-guild.dev/graphql/codegen), you can pass the inferred types to the `graphql()` method and it will use them to type the result and variables of the query. ::: :::REST_TAB You can also access the Wix GraphQL API using the REST API. **Endpoint:** `POST https://www.wixapis.com/graphql` **Headers:** - `Authorization: >` - `Content-Type: application/json` **Example:** ```sh curl -X POST 'https://www.wixapis.com/graphql' \ -H 'Authorization: >' \ -H 'Content-Type: application/json' \ -d '{ "query": "query Products($filter: JSON!) { storesProductsV1Products(queryInput: { query: { filter: $filter }}) { items { name } } }", "variables": { "filter": { "name": { "$startsWith": "Coffee" } } } }' ``` ::: ::::