# Quickstart guide

Source: https://developers.swell.is/guides/quickstart-guide

Swell is a next-generation ecommerce platform with a schema-driven API, designed as an ideal alternative to building your own commerce backend from scratch. This guide takes you from a new account to your first API calls in a few minutes.

- [Swell CLI](https://developers.swell.is/apps/cli): Learn how to use the Swell CLI to build apps and more in this complete reference.
- [Apps SDK](https://developers.swell.is/apps/swell-apps-sdk): Learn how to use the Apps SDK to simplify building frontend interfaces for Swell Apps.

### 1. Create a store

If you don't have one yet, sign up at swell.is to create your account and store. Every store has a live environment, and you can enable a separate [test environment](https://developers.swell.is/guides/test-environments) for development — recommended while you're experimenting.

### 2. Get your API keys

In the dashboard, open **Developer → API keys**. There are two kinds of keys:

- Public keys (`pk_`) are safe to use in browsers and storefronts with the Frontend API.
- Secret keys (`sk_`) grant full access to the Backend API — keep them on the server and never expose them publicly.

Keys are environment-specific: `pk_test_` and `sk_test_` keys route requests to your test environment, while `pk_live_` and `sk_live_` keys target live data.

### 3. Make your first Backend API call

The Backend API authenticates with basic auth, using your store ID and a secret key:

```txt
curl https://api.swell.store/products \
  -u your-store-id:your-secret-key
```

Or with the `swell-node` client:

```javascript
const { swell } = require('swell-node');
swell.init('your-store-id', 'your-secret-key');

const products = await swell.get('/products', {
  limit: 10,
});
```

Every model in your store — standard and custom — has full CRUD endpoints like this. See the [Backend API reference](https://developers.swell.is/backend-api/introduction) for all collections and query options.

### 4. Fetch products in a storefront

The Frontend API is designed for browsers, authenticated with your public key. Install `swell-js` and list your products:

```txt
npm install swell-js
```

```javascript
import swell from 'swell-js';

swell.init('your-store-id', 'your-public-key');

const products = await swell.products.list();
```

The [Frontend API](https://developers.swell.is/frontend-api/introduction) also covers carts, checkout, customer accounts, and subscriptions — everything needed to build a complete storefront.

### Next steps

- Extend the platform with custom fields, functions, and integrations — [learn about Apps](https://developers.swell.is/apps/overview).
- Build a complete customer experience — [learn about Storefronts](https://developers.swell.is/storefronts/overview).
- Shape your data and content — [learn about customizing models](https://developers.swell.is/guides/model-introduction).
