# API Integration

Integrate InstaRank's powerful SEO tools with your existing workflows using our comprehensive REST API. Automate SEO monitoring, generate reports, and manage your SEO campaigns programmatically.

## API Overview

### Powerful REST API

Our REST API provides programmatic access to all InstaRank features, allowing you to integrate SEO monitoring and optimization into your existing tools and workflows.

✓  RESTful JSON API  
✓  OAuth 2.0 authentication  
✓  Rate limiting and quotas

#### Easy Integration

Simple HTTP requests with comprehensive documentation

## Getting Started

### Authentication

All API requests require authentication using your API key. Include it in the Authorization header.

```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
 -H "Content-Type: application/json" \
https://api.instarank.com/v1/websites
```

#### Get Your API Key:

1. Log in to your InstaRank dashboard  
2. Navigate to Settings → API Keys  
3. Generate a new API key  
4. Copy and store it securely

### Base URL

All API endpoints are relative to our base URL:

```
https://api.instarank.com/v1
```

## API Endpoints

### GET `/websites`

Retrieve all websites in your account.

```bash
GET /v1/websites
Authorization: Bearer YOUR_API_KEY
```

### POST `/websites`

Add a new website for crawling.

```bash
POST /v1/websites
Content-Type: application/json
```

```json
{
  "url": "https://example.com",
  "name": "My Website",
  "industry": "general"
}
```

### GET `/websites/{id}/reports`

Get SEO reports for a specific website.

```bash
GET /v1/websites/123/reports
Authorization: Bearer YOUR_API_KEY
```

### GET `/websites/{id}/ai-fixes`

Retrieve AI-generated SEO fixes for a website.

```bash
GET /v1/websites/123/ai-fixes
Authorization: Bearer YOUR_API_KEY
```

## Response Examples

### Website List Response

```json
{
  "websites": [
    {
      "id": 123,
      "name": "My Website",
      "url": "https://example.com",
      "status": "active",
      "seo_score": 85,
      "last_crawled": "2024-01-15T10:30:00Z"
    }
  ]
}
```

### SEO Report Response

```json
{
  "report_id": "rpt_123",
  "website_id": 123,
  "seo_score": 85,
  "issues": {
    "critical": 3,
    "warnings": 8,
    "enhancements": 12
  },
  "performance": {
    "page_speed": 78,
    "mobile_score": 82
  }
}
```

## Rate Limits & Quotas

### Rate Limits

- **Free Plan**: 100 requests/hour  
- **Pro Plan**: 1,000 requests/hour  
- **Enterprise**: 10,000 requests/hour

### Response Headers

- `X-RateLimit-Limit` - Requests per hour  
- `X-RateLimit-Remaining` - Remaining requests  
- `X-RateLimit-Reset` - Reset timestamp

## SDKs & Libraries

### JavaScript

Official Node.js SDK

```
npm install @instarank/api
```

### Python

Official Python SDK

```
pip install instarank
```

### PHP

Official PHP SDK

```
composer require instarank/api
```

## Ready to Integrate?

Start building with our API and integrate InstaRank's SEO tools into your applications.
