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

# Quick Start

> Get started with Offergrid in minutes

## Choose Your Role

Offergrid serves two distinct user types. Select the path that matches your role:

<CardGroup cols={2}>
  <Card title="I'm a Provider" icon="building" href="/docs/providers/quickstart">
    Service providers offering internet or electricity services
  </Card>

  <Card title="I'm a Reseller" icon="handshake" href="/docs/resellers/quickstart">
    Resellers helping customers find and purchase services
  </Card>
</CardGroup>

## Quick Setup (Both Roles)

### 1. Create Your Account

<Steps>
  <Step title="Sign up">
    Visit [offergrid.io](https://offergrid.io) and click **Sign Up**
  </Step>

  <Step title="Choose your role">
    Select **Provider** or **Reseller** based on your business
  </Step>

  <Step title="Complete profile">
    Fill in your company information and contact details
  </Step>

  <Step title="Get verified">
    Complete verification (typically takes 1-2 business days)
  </Step>
</Steps>

### 2. Generate API Key

<Steps>
  <Step title="Go to settings">
    Navigate to **Settings** → **API Keys** in your dashboard
  </Step>

  <Step title="Generate key">
    Click **Generate New API Key**
  </Step>

  <Step title="Save securely">
    Copy the key immediately and store it in environment variables

    ```bash theme={null}
    export OFFERGRID_API_KEY="your-api-key-here"
    ```

    <Warning>You won't be able to see this key again!</Warning>
  </Step>
</Steps>

### 3. Make Your First API Call

Test your API key with a simple request:

<CodeGroup>
  ```bash cURL theme={null}
  # Providers: List your offers
  curl -X GET https://api.offergrid.io/provider/offers \
    -H "x-api-key: YOUR_API_KEY"

  # Resellers: Browse catalog
  curl -X GET https://api.offergrid.io/reseller/catalog \
    -H "x-api-key: YOUR_API_KEY"
  ```

  ```typescript TypeScript theme={null}
  // Providers: List offers
  const response = await fetch('https://api.offergrid.io/provider/offers', {
    headers: {
      'x-api-key': process.env.OFFERGRID_API_KEY,
    },
  });

  const offers = await response.json();
  console.log(offers);
  ```

  ```python Python theme={null}
  import requests
  import os

  # Providers: List offers
  response = requests.get(
    'https://api.offergrid.io/provider/offers',
    headers={'x-api-key': os.environ['OFFERGRID_API_KEY']}
  )

  offers = response.json()
  print(offers)
  ```
</CodeGroup>

## Provider Quick Start

### Create Your First Offer

```bash theme={null}
curl -X POST https://api.offergrid.io/provider/offers \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "High-Speed Internet 1000 Mbps",
    "category": "internet",
    "status": "active",
    "monthlyPrice": 59.99,
    "description": "Blazing fast fiber internet",
    "keyFeatures": ["1000 Mbps download", "Unlimited data"]
  }'
```

### View Incoming Orders

```bash theme={null}
curl -X GET https://api.offergrid.io/provider/orders \
  -H "x-api-key: YOUR_API_KEY"
```

### Next Steps for Providers

<CardGroup cols={2}>
  <Card title="Provider Guide" icon="book" href="/docs/providers/quickstart">
    Complete provider onboarding checklist
  </Card>

  <Card title="Creating Offers" icon="plus-circle" href="/docs/providers/creating-offers">
    Learn how to create service offerings
  </Card>

  <Card title="Order Fulfillment" icon="check-circle" href="/docs/providers/receiving-orders">
    Manage incoming orders
  </Card>

  <Card title="Provider API" icon="code" href="/docs/providers/api-integration">
    API integration guide
  </Card>
</CardGroup>

## Reseller Quick Start

### Browse Available Services

```bash theme={null}
curl -X GET "https://api.offergrid.io/reseller/catalog?category=internet&zipCode=94102" \
  -H "x-api-key: YOUR_API_KEY"
```

### Place Your First Order

```bash theme={null}
curl -X POST https://api.offergrid.io/reseller/orders \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [{ "offerId": "off-123-abc" }],
    "customerInfo": {
      "fullName": "John Doe",
      "email": "john@example.com",
      "phone": "+1-555-123-4567"
    },
    "serviceAddress": {
      "street": "123 Main St",
      "city": "San Francisco",
      "state": "CA",
      "zipCode": "94102",
      "country": "US"
    }
  }'
```

### Track Orders

```bash theme={null}
curl -X GET https://api.offergrid.io/reseller/orders \
  -H "x-api-key: YOUR_API_KEY"
```

### Next Steps for Resellers

<CardGroup cols={2}>
  <Card title="Reseller Guide" icon="book" href="/docs/resellers/quickstart">
    Complete reseller onboarding checklist
  </Card>

  <Card title="Browsing Catalog" icon="magnifying-glass" href="/docs/resellers/browsing-catalog">
    Find services for your customers
  </Card>

  <Card title="Placing Orders" icon="file-invoice" href="/docs/resellers/creating-orders">
    Learn how to place orders
  </Card>

  <Card title="Reseller API" icon="code" href="/docs/resellers/api-integration">
    API integration guide
  </Card>
</CardGroup>

## Common Questions

<AccordionGroup>
  <Accordion title="How long does verification take?">
    Account verification typically takes 1-2 business days. You'll receive an email when your account is approved.
  </Accordion>

  <Accordion title="Can I be both a provider and reseller?">
    Yes! Some teams have hybrid access and can use both provider and reseller endpoints with the same API key.
  </Accordion>

  <Accordion title="Where can I find my API key?">
    Go to **Settings** → **API Keys** in your dashboard. If you lost your key, revoke it and generate a new one.
  </Accordion>

  <Accordion title="What are the API rate limits?">
    * Burst: 100 requests per minute
    * Sustained: 10,000 requests per hour
  </Accordion>

  <Accordion title="Can I test without affecting production?">
    Yes, create offers with `status: "draft"` to test without making them visible. Work with support to create test orders.
  </Accordion>
</AccordionGroup>

## Additional Resources

<CardGroup cols={3}>
  <Card title="How It Works" icon="diagram-project" href="/docs/how-it-works">
    Platform overview and workflows
  </Card>

  <Card title="Authentication" icon="key" href="/docs/authentication">
    API authentication guide
  </Card>

  <Card title="API Reference" icon="code" href="/docs/api-reference/introduction">
    Complete API documentation
  </Card>
</CardGroup>

## Need Help?

<Card title="Contact Support" icon="envelope" href="mailto:support@offergrid.io">
  Questions? Reach out to our team at [support@offergrid.io](mailto:support@offergrid.io)
</Card>
