Getting started

Getting Started

Get up and running with Geins in minutes

Getting Started with Geins

Follow these steps to make your first API call.

1. Get Your API Key

  1. Sign up or login to your existing account
  2. Open the Merchant Center
  3. Go to SettingsAPI Users
  4. Create a new user

2. Choose Your API

I want to...Use this API
Build a storefrontMerchant API (GraphQL)
Display products & pricesMerchant API (GraphQL)
Handle cart & checkoutMerchant API (GraphQL)
Sync with ERP/WMSManagement API (REST)
Update inventoryManagement API (REST)
Automate back-office tasksManagement API (REST)

3. Make Your First Call

curl -X POST 'https://merchantapi.geins.io/graphql' \
  -H 'Content-Type: application/json' \
  -H 'X-ApiKey: {MERCHANT_API_KEY}' \
  -d '{"query": "{ products(take: 3) { products { productId name alias } } }"}'

4. Explore Further

API Playground

Test queries interactively in your browser

GitHub Examples

Sample projects and starter templates

Common First Steps

Display a Product List

query ProductList {
  products(take: 12) {
    products {
      productId
      name
      alias
      brand {
        name
      }
      unitPrice {
        sellingPriceIncVat
      }
    }
  }
}

Create a Cart

mutation CreateCart {
  cartCreate(channelId: "1", languageId: "en", currencyId: "USD") {
    id
  }
}

Add Item to Cart

mutation AddToCart($cartId: String!, $skuId: Int!) {
  cartAddItem(id: $cartId, item: { skuId: $skuId, quantity: 1 }) {
    id
    items { productName quantity }
    summary { totalIncVat }
  }
}

Authentication & Personalization

Create logged-in experiences with personalized content and customer-specific pricing.

User Authentication

Authenticate users to unlock personalized features:

mutation Login($email: String!, $password: String!) {
  authLogin(email: $email, password: $password) {
    token
    user {
      id
      email
      customerType
    }
  }
}

Use the returned token in subsequent requests:

curl -X POST 'https://merchantapi.geins.io/graphql' \
  -H 'Content-Type: application/json' \
  -H 'X-ApiKey: {MERCHANT_API_KEY}' \
  -H 'Authorization: Bearer USER_TOKEN' \
  -d '{"query": "{ user { id email } }"}'

Personalized Price Lists

Logged-in users automatically receive their assigned price list:

query ProductWithCustomerPricing {
  products(take: 5) {
    products {
      productId
      name
      unitPrice {
        sellingPriceIncVat    # Price based on user's price list
        regularPriceIncVat    # Original price (for showing discounts)
      }
    }
  }
}

Price lists are assigned per customer or customer group in the Merchant Center, enabling:

  • B2B pricing — Different prices for business customers
  • VIP tiers — Loyalty-based discounts
  • Contract pricing — Negotiated rates per customer

Personalized Content

Deliver targeted content based on user segments:

query PersonalizedContent {
  widgets(areaName: "homepage-hero") {
    widgets {
      name
      content   # Content tailored to user's segment
    }
  }
}
Need help? Try the MCP Server to get AI-powered assistance right in your IDE.