> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runkariz.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Connect to E-commerce Channels in minutes

This guide will walk you through the complete process of integrating with Kariz and connecting to your first E-commerce platform. You'll learn how to authenticate, create a connection for your users, and retrieve standardized data.

<Note>
  Every call to a Kariz API must include an API secret key. After you create a Kariz Account, we will generate this API key. It must be included in every request you send to us so we can authenticate you.
</Note>

## What You Will Build

By the end of this guide, you'll have set up a complete integration that allows your users to connect their E-commerce platforms (like Shopify, WooCommerce, Amazon, etc.) to your application. You'll be able to access their product and order data through our unified API.

## Step 1: Create a Developer Account

<Steps>
  <Step title="Book a Demo">
    If don't have an account [book a demo]().
  </Step>

  <Step title="Receive API Key">
    During onboarding, you'll receive your **application API key** which authenticates your requests to Kariz.
  </Step>
</Steps>

Your application API key is a string that looks something like this:

```text
client_id: "client123"
client_secret: "clientsecret123"
```

Store these credentials securely - you'll need them for all future requests to the Kariz API.

## Step 2: Obtain an Access Token

Once you have your account set up, you will need to create an Access token. This token is used to authenticate all of your requests to the Kariz API. By default, the token is valid for 90 days.

<CodeGroup>
  ```bash Endpoint
  POST https://sts.demo.trykariz.com/connect/token
  ```
</CodeGroup>

Save this access token securely - you'll use it for all your API requests by including it in the Authorization header:

```text
Authorization: Bearer YOUR_ACCESS_TOKEN
```

## Step 3: Authenticate a User with Magic Link

There are 2 ways to authenticate a user in Kariz (for more information, see the [Authentication](/authentication) section). For this tutorial, we will use our Magic Link authenticator as this is the quickest way to set up.

<CodeGroup>
  ```bash Endpoint
  GET https://api.trykariz.com/api/KarizClientApp/GetTpUserAuthDisposableToken
  ```
</CodeGroup>

### Understanding the Parameters:

1. **Authorization:** The access token you obtained in Step 2 (sent in the request header).
2. **tpUserId:** Your end user's identifier. This is purely for identification purposes within Kariz.
3. **redirectUrl:** After the user completes authentication, we will redirect them to this URL.
4. **scopes:** The E-commerce channels the user will be asked to authenticate with. By default, users will be given the option to authenticate to all supported channels.

<Note>
  When you send a tpUserId that doesn't exist yet, we create a new user record. When you use an existing tpUserId, we update that record to include new sales channels or update existing ones.
</Note>

After getting the Magic Link, share the \`uri\` from the response with your user. When they visit this URL, they will be guided through authenticating with their selected E-commerce platforms.

## Step 4: Request Data

Now that you have authenticated a user, you can request data from them across different sales channels. The data will always be returned in exactly the same format, regardless of which platform it came from.

### Retrieving Products

<CodeGroup>
  ```bash Endpoint
  POST https://api.trykariz.com/api/KarizClientApp/Unified/Products
  ```
</CodeGroup>

### Retrieving Orders

<CodeGroup>
  ```bash Endpoint
  POST https://api.trykariz.com/api/KarizClientApp/Unified/Orders
  ```
</CodeGroup>

<Note>
  When retrieving large datasets, you can use the \`next\_page\_token\` value returned in the response to paginate through results. For more details, see the [Pagination](/pagination) section.
</Note>

## Complete

Congratulations! You've now set up a complete integration with Kariz and can access data from any of the E-commerce channels we support. The data is standardized across all platforms, making it easy to build features that work consistently regardless of which E-commerce platform your users are connected to.
