Getting Started with Shopify

Fauxlio mirrors Shopify's API structure, making it easy to develop, test, and validate your apps against realistic, synthetic data - without touching a live Shopify store.

How It Works

  1. Create a Fauxlio Account: Sign up at app.fauxlio.dev and generate an API key.
  2. Connect via Shopify Client Libraries: Use the official Shopify API libraries (Node, Ruby, Python, PHP) or Postman.
  3. Start Querying: Call Fauxlio's endpoints just like you would Shopify's API. We handle the data generation.

API Base URL

All API calls are made to:

https://{your_subdomain}.myshopify.fauxlio.dev

Include your API key in the X-Shopify-Access-Token header:

            
curl -H "X-Shopify-Access-Token: YOUR_KEY" https://6fvao84oxdo4.myshopify.fauxlio.dev/admin/api/2025-07/graphql.json
            
          

Available Resources

Example: Fetching Products

            
// Using Shopify's Node library
import { createAdminApiClient } from '@shopify/admin-api-client';

const client = createAdminApiClient({
  storeDomain: '6fvao84oxdo4.myshopify.fauxlio.dev',
  apiVersion: 'unstable',
  accessToken: process.env.FAUXLIO_API_KEY,
});

const products = await client.request(`
query {
  productVariants(first: 50, query: "created_at:>'2025-06-27T11:39:20Z'", sortKey: ID) {
    edges {
        cursor
        node {
            id
            title
            sku
            createdAt
            updatedAt
            product {
                id
                vendor
                productType
                status
                createdAt
                updatedAt
                publishedAt
            }
            image {
                id
                url
                width
                height
                altText
            }
            inventoryItem {
                id
                duplicateSkuCount
                harmonizedSystemCode
                legacyResourceId
                locationsCount
                countryCodeOfOrigin
                provinceCodeOfOrigin
                requiresShipping
                sku
                tracked
                createdAt
                updatedAt
                inventoryLevels(first: 1) {
                    pageInfo {
                        hasPreviousPage
                        hasNextPage
                        startCursor
                        endCursor
                    }
                    edges {
                        node {
                            id
                            createdAt
                            updatedAt
                            location {
                                id
                                name
                                address {
                                    address1
                                    address2
                                    city
                                    province
                                    provinceCode
                                    country
                                    countryCode
                                    zip
                                }
                            }
                            quantities(names: ["available", "on_hand"]) {
                                id
                                name
                                quantity
                                updatedAt
                            }
                        }
                    }
                }
            }
        }
    }
    pageInfo {
      hasPreviousPage
      hasNextPage
      startCursor
      endCursor
    }
  }
}
`);
console.log(products);