{"id":22476978,"url":"https://github.com/felixtellmann/shopify-typed-node-api","last_synced_at":"2025-08-02T13:30:48.062Z","repository":{"id":58381143,"uuid":"437876919","full_name":"FelixTellmann/shopify-typed-node-api","owner":"FelixTellmann","description":null,"archived":false,"fork":false,"pushed_at":"2022-12-17T17:02:58.000Z","size":1370,"stargazers_count":5,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-14T10:26:11.880Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FelixTellmann.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-13T13:07:29.000Z","updated_at":"2024-08-12T06:42:38.000Z","dependencies_parsed_at":"2023-01-29T17:45:57.220Z","dependency_job_id":null,"html_url":"https://github.com/FelixTellmann/shopify-typed-node-api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FelixTellmann%2Fshopify-typed-node-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FelixTellmann%2Fshopify-typed-node-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FelixTellmann%2Fshopify-typed-node-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FelixTellmann%2Fshopify-typed-node-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FelixTellmann","download_url":"https://codeload.github.com/FelixTellmann/shopify-typed-node-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228476056,"owners_count":17926134,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-06T14:09:10.932Z","updated_at":"2024-12-06T14:09:11.645Z","avatar_url":"https://github.com/FelixTellmann.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `shopify-typed-node-api`\n\n\u003c!-- ![Build Status]() --\u003e\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE.md)\n[![npm version](https://badge.fury.io/js/shopify-typed-node-api.svg)](https://badge.fury.io/js/shopify-typed-node-api)\n\nThis library provides support for TypeScript/JavaScript [Shopify](https://www.shopify.com) apps to access the [Shopify Admin API](https://shopify.dev/docs/admin-api), by making it easier to perform the following actions:\n\n- Creating [online](https://shopify.dev/concepts/about-apis/authentication#online-access) or [offline](https://shopify.dev/concepts/about-apis/authentication#offline-access) access tokens for the Admin API via OAuth\n- Making requests to the [REST API](https://shopify.dev/docs/admin-api/rest/reference)\n- Making requests to the [GraphQL API](https://shopify.dev/docs/admin-api/graphql/reference)\n- Register/process webhooks\n\nOnce your app has access to the Admin API, you can also access the [Shopify Storefront API](https://shopify.dev/docs/storefront-api) to run GraphQL queries using the `unauthenticated_*` access scopes.\n\nThis library can be used in any application that has a Node.js backend, since it doesn't rely on any specific framework—you can include it alongside your preferred stack and only use the features that you need to build your app.\n\n# Requirements\n\nTo follow these usage guides, you will need to:\n\n- have a basic understanding of [Node.js](https://nodejs.org)\n- have a Shopify Partner account and development store\n- _OR_ have a test store where you can create a private app\n- have a private or custom app already set up in your test store or partner account\n- use [ngrok](https://ngrok.com), in order to create a secure tunnel to your app running on your localhost\n- add the `ngrok` URL and the appropriate redirect for your OAuth callback route to your app settings\n- have [yarn](https://yarnpkg.com) installed\n\n\u003c!-- Make sure this section is in sync with docs/README.md --\u003e\n\n# Getting started\n\nYou can follow our [getting started guide](docs/), which will provide instructions on how to create an app using plain Node.js code, or the [Express](https://expressjs.com/) framework. Both examples are written in Typescript.\n\n- [Getting started](docs/getting_started.md)\n  - [Install dependencies](docs/getting_started.md#install-dependencies)\n  - [Set up base files](docs/getting_started.md#set-up-base-files)\n  - [Set up environment](docs/getting_started.md#set-up-environment)\n  - [Set up Context](docs/getting_started.md#set-up-context)\n  - [Running your app](docs/getting_started.md#running-your-app)\n- [Performing OAuth](docs/usage/oauth.md)\n  - [Add a route to start OAuth](docs/usage/oauth.md#add-a-route-to-start-oauth)\n  - [Add your OAuth callback route](docs/usage/oauth.md#add-your-oauth-callback-route)\n  - [Fetching sessions](docs/usage/oauth.md#fetching-sessions)\n  - [Detecting scope changes](docs/usage/oauth.md#detecting-scope-changes)\n- [Make a REST API call](docs/usage/rest.md)\n- [Make a GraphQL API call](docs/usage/graphql.md)\n- [Make a Storefront API call](docs/usage/storefront.md)\n- [Webhooks](docs/usage/webhooks.md)\n  - [Register a Webhook](docs/usage/webhooks.md#register-a-webhook)\n  - [Process a Webhook](docs/usage/webhooks.md#process-a-webhook)\n- [Known issues and caveats](docs/issues.md)\n  - [Notes on session handling](docs/issues.md#notes-on-session-handling)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelixtellmann%2Fshopify-typed-node-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffelixtellmann%2Fshopify-typed-node-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelixtellmann%2Fshopify-typed-node-api/lists"}