API Reference

API Reference
for MarketBot

Integrate MarketBot's AI-powered marketing capabilities into your applications with our comprehensive REST API.

API Overview

MarketBot provides a RESTful API that allows you to programmatically access all our AI-powered marketing features.

Authentication

All API requests require authentication using session cookies or API keys.

Base URL

All endpoints are relative to your MarketBot instance base URL.

JSON Responses

All API responses are returned in JSON format with consistent structure.

API Endpoints

Complete reference for all available API endpoints.

POST
/api/domains
Required
Create Domain
Add a new domain for analysis

Parameters:

domain_url
string
Required

The domain URL to analyze

industry
string

Industry category

target_audience
string

Target audience description

GET
/api/domains
Required
List Domains
Get all domains for the authenticated user
GET
/api/domains/[id]
Required
Get Domain
Get detailed information about a specific domain

Parameters:

id
string
Required

Domain ID

POST
/api/domains/[id]/analysis
Required
Analyze Domain
Trigger SEO analysis for a domain

Parameters:

id
string
Required

Domain ID

GET
/api/domains/[id]/analysis
Required
Get Analysis Results
Retrieve analysis results for a domain

Parameters:

id
string
Required

Domain ID

GET
/api/campaigns
Required
List Campaigns
Get all campaigns/tasks for the user
POST
/api/campaigns
Required
Create Campaign
Create a new campaign/task

Parameters:

title
string
Required

Campaign title

content
string
Required

Campaign content

platform
string
Required

Target platform

PATCH
/api/campaigns
Required
Update Campaign
Update campaign status

Parameters:

id
string
Required

Campaign ID

status
string
Required

New status

GET
/api/payments/history
Required
Get Payment History
Get current user's payment history

Code Examples

Practical examples showing how to use the MarketBot API.

Create a Domain
const response = await fetch('/api/domains', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  credentials: 'include',
  body: JSON.stringify({
    domain_url: 'https://example.com',
    industry: 'Technology',
    target_audience: 'Developers and tech professionals'
  })
});

const domain = await response.json();
console.log('Domain created:', domain);
Analyze a Domain
const response = await fetch('/api/domains/123/analysis', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  credentials: 'include'
});

const result = await response.json();
console.log('Analysis started:', result);
Get Analysis Results
const response = await fetch('/api/domains/123/analysis', {
  method: 'GET',
  headers: {
    'Content-Type': 'application/json',
  },
  credentials: 'include'
});

const analysis = await response.json();
console.log('Analysis results:', analysis);

Response Examples

Sample API responses to help you understand the data structure.

Domain Analysis Response
{
  "success": true,
  "analysis": {
    "semrush_data": {
      "domain_authority": 45,
      "monthly_visitors": 12500,
      "organic_keywords": 234,
      "backlinks": 1567
    },
    "pagespeed_data": {
      "mobile_score": 85,
      "desktop_score": 92,
      "core_web_vitals": {
        "lcp": 2.1,
        "fid": 0.8,
        "cls": 0.05
      }
    },
    "analysis": {
      "summary": "Strong technical foundation with room for content improvement",
      "strengths": ["Fast loading times", "Good mobile optimization"],
      "weaknesses": ["Limited content depth", "Missing meta descriptions"],
      "fixes": ["Add more detailed content", "Optimize meta tags"]
    },
    "marketing_goals": [
      "Increase organic traffic by 25%",
      "Improve keyword rankings",
      "Enhance user engagement"
    ],
    "action_calendar": [
      {
        "task_name": "Create SEO-optimized blog post",
        "description": "Write comprehensive article about industry trends",
        "date": "2025-01-15",
        "priority": "high",
        "category": "content"
      }
    ]
  }
}

Error Handling

Understanding how to handle API errors and status codes.

Common Error Codes
400Bad Request
401Unauthorized
403Forbidden
404Not Found
429Rate Limited
500Server Error
Best Practices
  • Always check response status codes
  • Implement proper error handling
  • Use exponential backoff for retries
  • Cache responses when appropriate
  • Monitor rate limits

Ready to Integrate?

Start building with MarketBot's API today. Get access to AI-powered marketing capabilities in your applications.