# Quickstart Guide

This guide helps you go from **zero → deployed Lamatic project** and test it end-to-end. Use UI-first with Studio approach or API-first: code and API calls approach.

## UI-first - What you’ll learn

- How to create a project and build your first Flow
- How to test a Flow in Studio
- How to deploy so your Flow is accessible from integrations (API / widget / apps)

## Prerequisites

- A Lamatic account: [lamatic.ai](/content/site-root.html)
- Basic understanding: a **Flow** is a set of connected **Nodes** that run in order
- Optional (recommended): pick a Template to move faster

If you’re brand new, start with a template first. You can always customize it later.

# Build your first flow in 2 mins

## Learn how to create a new chatbot flow from scratch, configure triggers and responses, and deploy the flow for use. This guide provides step-by-step instructions to ensure your chatbot functions correctly and is ready for deployment.

### Create (or pick) a Project

1. Open Studio (you’ll land on your dashboard).
2. Create a new Project (or open an existing one).

Each Project is isolated — it has its own settings, credentials, and deployments.

### Select a Template

1. Go to **Templates**.
2. Pick a template that matches your goal (API, chatbot, RAG, automation).
3. Add it to your Project.

If you prefer starting from scratch, you can create a new Flow directly from the **Flows** section.

### Configure the Nodes (make it run)

1. Open the Flow in the **Editor**.
2. Click each Node and fill required fields (you’ll usually configure):
   - Model/provider credentials (for AI Nodes)
   - App connections (for Apps Nodes like Slack / Postgres)
   - Inputs and payload fields (what your Flow consumes)

### Test the Flow

1. Click **Test** in the Editor.
2. Provide sample inputs (if your trigger expects them).
3. Verify outputs at the final node (Response) and check logs if anything fails.

### Deploy the Project

Deployment makes your latest Flow changes available for integrations.

1. Click **Deploy**.
2. Wait for deployment to finish.
3. Copy the integration details from Studio (endpoint / keys / ids) as needed.

⚠️ Save your Flow before deploying. Changes made after the last save will not take effect in the deployed version.

⚠️ If you update keys, variables, or the Flow, deploy again so changes take effect.

## API-first (5 minutes)

Get from signup to your first API call without using the Editor.

### Step 1: Create a project and get your API key (1 min)

1. Open [Studio](https://studio.lamatic.ai/) and create a new Project (or use an existing one).
2. Go to **Settings → API Keys** and click **Create a New API Key**. Copy the key — you won’t see it again.
3. Note your **Project ID** (in project settings) and your **Project URL** (GraphQL endpoint).

⚠️ Store the API key in an environment variable. Never commit it to version control.

### Step 2: Create a Flow from a template (1 min)

1. Go to **Templates** and add the **RAG** (or **Simple Chat**) template to your project.
2. Open the Flow in the Editor. Optionally configure model credentials, then **Save**.

### Step 3: Deploy (30 sec)

1. Click **Deploy** in the Editor and wait for the deployment to finish.
2. From the Connect/API panel, copy the **Workflow ID** (or Flow ID) for the Flow you just deployed.

### Step 4: Call the API from your terminal (2 min)

**Prerequisites:** Replace `<YOUR_API_KEY>`, `<PROJECT_ID>`, `<FLOW_ID>`, and `<PROJECT_ENDPOINT>` with your real values. Find them in Studio: Settings → API Keys, project settings, and the Flow’s API/Connect panel.

```
curl -X POST "<PROJECT_ENDPOINT>" \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -H "x-project-id: <PROJECT_ID>" \
  -d '{
    "query": "query ExecuteWorkflow($workflowId: String!, $payload: JSON) { executeWorkflow(workflowId: $workflowId, payload: $payload) { status result } }",
    "variables": {
      "workflowId": "<FLOW_ID>",
      "payload": { "question": "Hello, what can you do?" }
    }
  }'
```

You should get a JSON response with `status` and `result`. If you see `401`, check your API key and `x-project-id`. If you see `404`, confirm the Flow is deployed and the workflow ID is correct.

### Step 5: Integrate the SDK (optional)

```
npm install lamatic
```

See [API & SDK](/content/docs/api-integration/sdk/index.html) and [GraphQL](/content/docs/interface/graphql/index.html) for full examples in JavaScript, Python, and cURL.

## Common beginner mistakes (and how to avoid them)

- **Saving the flow**: Always save your Flow before deploying, or your latest changes won’t take effect.
- **Forgetting to deploy**: If you updated keys, variables, or a Flow, deploy so changes take effect.
- **Missing credentials**: Many nodes require a model/API connection. Check the node config panel for required fields.
- **Payload mismatch**: Ensure your input payload matches what your trigger and nodes expect (field names + types).

## What’s next?

- **Core building blocks:** [Flows](/content/docs/flows/index.html), [Nodes](/content/docs/nodes/index.html), [Agents](/content/docs/agents/index.html)
- **Integrating from an app:** [API Overview](/content/docs/api-overview/index.html), [Authentication with API Keys](/content/docs/api-integration/api-key/index.html)
- **Hands-on tutorials:** [Guides](/content/guides/index.html)
