{"id":21825942,"url":"https://github.com/jonboydell/shopify-as-promised","last_synced_at":"2026-04-20T19:03:45.690Z","repository":{"id":82567018,"uuid":"96347459","full_name":"jonboydell/shopify-as-promised","owner":"jonboydell","description":"Promises wrapped library for Shopify API","archived":false,"fork":false,"pushed_at":"2017-07-06T06:09:50.000Z","size":12,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2025-03-21T11:51:22.771Z","etag":null,"topics":["promises","shopify","shopify-api","shopify-nodejs","shopify-sdk"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonboydell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-05T18:04:58.000Z","updated_at":"2021-04-30T07:06:21.000Z","dependencies_parsed_at":"2023-03-06T09:15:31.445Z","dependency_job_id":null,"html_url":"https://github.com/jonboydell/shopify-as-promised","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jonboydell/shopify-as-promised","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonboydell%2Fshopify-as-promised","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonboydell%2Fshopify-as-promised/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonboydell%2Fshopify-as-promised/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonboydell%2Fshopify-as-promised/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonboydell","download_url":"https://codeload.github.com/jonboydell/shopify-as-promised/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonboydell%2Fshopify-as-promised/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32061251,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T11:35:06.609Z","status":"ssl_error","status_checked_at":"2026-04-20T11:34:48.899Z","response_time":94,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["promises","shopify","shopify-api","shopify-nodejs","shopify-sdk"],"created_at":"2024-11-27T18:03:03.198Z","updated_at":"2026-04-20T19:03:45.686Z","avatar_url":"https://github.com/jonboydell.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# shopify-as-promised\n\nNodeJS module for interacting with Shopify's web API\n\n*Prerequisites*\n\n1. You have created a Shopify account\n2. You have created a private API in the Shopify dashboard (go Apps -\u003e Manage Private Apps -\u003e Generate API credentials)\n3. The API you've generated has the right permissions - you'll need READ \u0026 WRITE for customers, draft orders, orders and READ for products at the very least\n4. The webhook key can be in one of two places - if you create your webhooks using the Settings -\u003e Notifications options in the Shopify dashboard then the webhook key will be shown here, if you create your webhooks using the API then the key will be the shared secret (go Apps -\u003e Manage Private Apps -\u003e \u003cYOUR API\u003e -\u003e shared secret)\n\n*Usage*\n\n```\nconst Shopify = require('shopify')\nconst config = {\n  store: STORE_NAME,\n  username: STORE_PRIVATE_API_USERNAME,\n  password: STORE_PRIVATE_API_PASSWORD,\n  sharedSecret: STORE_PRIVATE_API_SHAREDSECRET,\n  webhookKey: STORE_PRIVATE_API_PASSWORD || STORE_NOTIFICATION_WEBHOOK_KEY\n}\nconst shopify = new Shopify(config)\n\nshopify.products()\n.then(\n  (products) =\u003e {\n    ... do something here...\n  }\n)\n```\n\n*Testing*\n\nTo test this module `mocha test` you'll need to create a config.json file in the /test directory in the following format.\n\n```\n{\n    \"store\": \"\u003cSTORE NAME\u003e\",\n    \"username\": \"\u003cSTORE PRIVATE API USERNAME\u003e\",\n    \"password\": \"\u003cSTORE PRIVATE API PASSWORD\u003e\",\n    \"webhookKey\": \"\u003cWEBHOOK KEY\u003e\",\n    \"test\": {\n      \"existingCustomerId\": \u003cID OF AN EXISTING CUSTOMER\u003e,\n      \"existingCustomerEmail\": \"\u003cEMAIL OF AN EXISTING CUSTOMER\u003e\",\n      \"existingProductId\": \u003cID OF AN EXISTING PRODUCT\u003e,\n      \"existingProductVariant\": \u003cID OF AN EXISTING PRODUCT VARIANT\u003e\n    }\n}\n```\n\n*Reference*\n\n\u003e It's worth noting that Shopify API won't decrement stock if you just use the order API, you have to create a draft order and then convert it to a real order by completing it\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonboydell%2Fshopify-as-promised","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonboydell%2Fshopify-as-promised","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonboydell%2Fshopify-as-promised/lists"}