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

# Quick Start

> Get started with the Finscreener API in minutes

## Overview

This guide will help you authenticate with the Finscreener API and make your first request in just a few minutes.

## Step 1: Get Your API Key

<Steps>
  <Step title="Create an Account">
    Sign up at [finscreener.in/auth/signup](https://finscreener.in/auth/signup) if you haven't already.
  </Step>

  <Step title="Navigate to Security Settings">
    Go to **User Profile** → **Security** tab in your Finscreener dashboard.
  </Step>

  <Step title="Copy Your API Key">
    Your Developer API Key starts with `fsk_`. Copy this key and keep it secure.
  </Step>
</Steps>

<Warning>
  Never share your API key publicly or commit it to version control. Treat it like a password.
</Warning>

## Step 2: Authenticate

Exchange your API key for JWT tokens:

```bash theme={null}
curl -X POST https://api.finscreener.in/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"api_key": "fsk_your_api_key_here"}'
```

**Response:**

```json theme={null}
{
  "success": true,
  "message": "Login successful",
  "user": {
    "name": "Your Name",
    "userId": "usr_xxxxx"
  },
  "token": {
    "access_token": "eyJhbGciOiJIUzI1NiIs...",
    "refresh_token": "eyJhbGciOiJIUzI1NiIs...",
    "token_type": "bearer"
  }
}
```

## Step 3: Make Your First Request

Use the access token to search for companies:

```bash theme={null}
curl -X POST https://api.finscreener.in/api/screener/search \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "City == '\''Mumbai'\'' AND llpStatus == '\''Active'\''",
    "type": "company",
    "page": 1,
    "limit": 10
  }'
```

## Next Steps

<CardGroup cols={2}>
  <Card title="FQL Query Language" icon="code" href="/fql/introduction">
    Learn to write powerful queries with FQL.
  </Card>

  <Card title="API Reference" icon="book" href="/api-reference/introduction">
    Explore all available API endpoints.
  </Card>

  <Card title="Rate Limits" icon="gauge" href="/api-reference/introduction#rate-limits">
    Understand API rate limits and quotas.
  </Card>
</CardGroup>

## Code Examples

<CodeGroup>
  ```python Python theme={null}
  import requests

  API_KEY = "fsk_your_api_key"
  BASE_URL = "https://api.finscreener.in"

  # Step 1: Authenticate
  auth_response = requests.post(
      f"{BASE_URL}/api/auth/login",
      json={"api_key": API_KEY}
  )
  token = auth_response.json()["token"]["access_token"]

  # Step 2: Search companies
  headers = {"Authorization": f"Bearer {token}"}
  search_response = requests.post(
      f"{BASE_URL}/api/screener/search",
      headers=headers,
      json={
          "query": "City == 'Mumbai' AND paidUpCapital > 10000000",
          "type": "company",
          "page": 1,
          "limit": 10
      }
  )
  companies = search_response.json()["data"]
  print(f"Found {len(companies)} companies")
  ```

  ```javascript JavaScript theme={null}
  const API_KEY = "fsk_your_api_key";
  const BASE_URL = "https://api.finscreener.in";

  // Step 1: Authenticate
  const authResponse = await fetch(`${BASE_URL}/api/auth/login`, {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ api_key: API_KEY })
  });
  const { token } = await authResponse.json();

  // Step 2: Search companies
  const searchResponse = await fetch(`${BASE_URL}/api/screener/search`, {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${token.access_token}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      query: "City == 'Mumbai' AND paidUpCapital > 10000000",
      type: "company",
      page: 1,
      limit: 10
    })
  });
  const { data } = await searchResponse.json();
  console.log(`Found ${data.length} companies`);
  ```
</CodeGroup>
