Power the world’s entrepreneurs
Build for 1,000,000 businesses that are transforming the world of commerce.
Become part of an incredible growth story
Our developer platform is growing as quickly as our customer base.
Earning potential (USD)
$272K
Average annual earnings for the top 25% of our app developers
Learn why developers are choosing Shopify
Use our powerful suite of APIs and tools
Shopify’s guides, tutorials, and thorough documentation help you every step of the way.
Custom storefronts
Develop unique shopping experiences on web, on mobile, and in-game.
Embedded apps
Build more seamless experiences using our extensions and libraries.
Get started with the Shopify Admin API in minutes
50+ endpoints to give you the freedom to build what you want. See examples below.
Table of Contents - API Code Samples
require 'shopify_api'
# Replace the following with your shop URL
shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.site = shop_url
shop = ShopifyAPI::Shop.current
# Create a new product
new_product = ShopifyAPI::Product.new
new_product.title = "Burton Custom Freestyle 151"
new_product.product_type = "Snowboard"
new_product.vendor = "Burton"
new_product.save
# Update a product
new_product.title = "Burton Custom Freestyle 151 - Ruby Edition"
new_product.save
const Shopify = require('shopify-api-node')
// Replace the following with your shop credentials
const shopify = new Shopify({
shopName: 'your-shop-name',
apiKey: 'your-api-key',
password: 'your-password'
})
// Create a new product
function create_a_product() {
return shopify.product.create(
{
"title": "Burton Custom Freestlye 151",
"product_type": "Snowboard",
"vendor": "Burton"
}
)
}
// Update a product
function update_product_after_creation(product_id) {
params = {
"title": "Burton Custom Freestyle 151 - Node Edition"
}
return shopify.product.update(product_id, params)
}
create_a_product().then(
response => update_product_after_creation(response.id)
).then(
response => create_an_order(response.variants[0].id),
err => console.error(err)
)
import shopify
# Replace the following with your shop URL
shop_url = "https://{API_KEY}:{PASSWORD}@{SHOP_NAME}.myshopify.com/admin"
shopify.ShopifyResource.set_site(shop_url)
# Create a new product
new_product = shopify.Product()
new_product.title = "Burton Custom Freestyle 151"
new_product.product_type = "Snowboard"
new_product.vendor = "Burton"
new_product.save()
# Update a product
new_product.title = "Burton Custom Freestyle 151 - Python Edition"
new_product.save()
# Create a new product
mutation {
productCreate(
input: {
title: "Burton Custom Freestyle 151",
productType: "Snowboard",
vendor: "Burton"
}
) {
product {
id
}
shop {
id
}
}
}
# Update a product
mutation {
productUpdate(
input: {
id: "gid://shopify/Product/629116370966",
title: "Burton Custom Freestyle 151 - GraphQL Edition"
}
) {
product {
id
}
}
}
require 'shopify_api'
# Replace the following with your shop URL
shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.site = shop_url
shop = ShopifyAPI::Shop.current
# Create a new product
new_product = ShopifyAPI::Product.new
new_product.title = "Burton Custom Freestyle 151"
new_product.product_type = "Snowboard"
new_product.save
# Create a new order
new_order = ShopifyAPI::Order.new
new_order.line_items = [
ShopifyAPI::LineItem.new(
:quantity => 1,
:variant_id => new_product.variants.first.id
)
]
new_order.save
const Shopify = require('shopify-api-node')
// Replace the following with your shop credentials
const shopify = new Shopify({
shopName: 'your-shop-name',
apiKey: 'your-api-key',
password: 'your-password'
})
// Create a new product
function create_a_product() {
return shopify.product.create(
{
"title": "Burton Custom Freestlye 151",
"product_type": "Snowboard",
}
)
}
// Create a new order
function create_an_order(variant_id) {
return shopify.order.create(
{
"line_items": [
{
"quantity": 1,
"variant_id": variant_id
}
]
}
)
}
create_a_product().then(
response => update_product_after_creation(response.id)
).then(
response => create_an_order(response.variants[0].id),
err => console.error(err)
)
import shopify
# Replace the following with your shop URL
shop_url = "https://{API_KEY}:{PASSWORD}@{SHOP_NAME}.myshopify.com/admin"
shopify.ShopifyResource.set_site(shop_url)
# Create a new product
new_product = shopify.Product()
new_product.title = "Burton Custom Freestyle 151"
new_product.product_type = "Snowboard"
new_product.save()
# Create a new order
new_order = shopify.Order()
new_order.line_items = [{
"quantity": 1,
"variant_id": new_product.variants[0].id
}]
new_order.save()
# Create a new order
mutation {
draftOrderCreate(
input: {
lineItems: {
variantId: "gid://shopify/ProductVariant/40534704150",
quantity: 1
}
}
) {
draftOrder {
id
}
}
}
require 'shopify_api'
# Replace the following with your shop URL
shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.site = shop_url
shop = ShopifyAPI::Shop.current
# Create new customer
new_customer = ShopifyAPI::Customer.new
new_customer.email = "sample.coder.ruby@shopify.com"
new_customer.first_name = "Sample"
new_customer.last_name = "Coder"
new_customer.save
# Update customer details
new_customer.first_name = "Supersample Ruby"
new_customer.save
const Shopify = require('shopify-api-node')
// Replace the following with your shop credentials
const shopify = new Shopify({
shopName: 'your-shop-name',
apiKey: 'your-api-key',
password: 'your-password'
})
// Create a new customer
function create_a_customer() {
return shopify.customer.create(
{
"email": "sample.coder.node@shopify.com",
"first_name": "Sample",
"last_name": "Coder"
}
);
}
// Update a customer
function update_customer_after_creation(customer_id) {
params = {
"first_name": "Supersample Node"
}
return shopify.customer.update(customer_id, params)
}
create_a_customer().then(
response => update_customer_after_creation(response.id),
err => console.error(err)
)
import shopify
# Replace the following with your shop URL
shop_url = "https://{API_KEY}:{PASSWORD}@{SHOP_NAME}.myshopify.com/admin"
shopify.ShopifyResource.set_site(shop_url)
# Create new customer
new_customer = shopify.Customer()
new_customer.email = "sample.coder.python@shopify.com"
new_customer.first_name = "Sample"
new_customer.last_name = "Coder"
new_customer.save()
# Update customer details
new_customer.first_name = "Supersample Python"
new_customer.save()
# Create a new customer
mutation {
customerCreate(
input: {
email: "sample.coder.graphql@shopify.com",
firstName: "Sample",
lastName: "Coder"
}
) {
userErrors {
field
message
}
customer {
id
}
}
}
# Update customer details
mutation {
customerUpdate(
input: {
id: "gid://shopify/Customer/491279155222",
firstName: "Supersample GraphQL"
}
) {
userErrors {
field
message
}
customer {
id
}
}
}