API DOCUMENTATION

Build powerful integrations with the BidMaster Pro REST API. Full access to bid management, estimation, and reporting features.

v1.0
API VERSION
99.9%
UPTIME
100ms
AVG RESPONSE
5000
RATE LIMIT/HR

🔑 AUTHENTICATION

All API requests require authentication using a Bearer token in the Authorization header.

Authorization: Bearer
••••••••••••••••••••••••••••••••
Test Environment
Use test keys starting with 'bm_test_'
Production
Live keys start with 'bm_live_'
Security
Never expose keys in client code

ENDPOINTS

📋 BIDS API

Complete CRUD operations for bids management

GET/api/v1/bids

List all bids with pagination and filtering

PARAMETERS

pageinteger
Page number (default: 1)
limitinteger
Items per page (default: 20, max: 100)
statusstring
Filter by status: draft, submitted, won, lost
project_idstring
Filter by project ID

RESPONSE

{
  "data": [
    {
      "id": "bid_123abc",
      "project_name": "Downtown Office Complex",
      "client": "ABC Corp",
      "amount": 2500000,
      "status": "submitted",
      "due_date": "2024-12-25",
      "win_probability": 0.73,
      "created_at": "2024-12-01T08:00:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 156,
    "pages": 8
  }
}
POST/api/v1/bids

Create a new bid

PARAMETERS

project_namestringREQUIRED
Name of the project
clientstringREQUIRED
Client name or ID
amountnumberREQUIRED
Bid amount in cents
due_datestringREQUIRED
ISO 8601 date format
descriptionstring
Bid description

RESPONSE

{
  "data": {
    "id": "bid_456def",
    "project_name": "Highway Bridge Repair",
    "client": "State DOT",
    "amount": 5000000,
    "status": "draft",
    "created_at": "2024-12-18T10:30:00Z"
  }
}
PUT/api/v1/bids/{id}

Update an existing bid

PARAMETERS

statusstring
New status
amountnumber
Updated amount
DELETE/api/v1/bids/{id}

Delete a bid

💻 CODE EXAMPLES

Authentication

const headers = {
  'Authorization': 'Bearer YOUR_API_KEY',
  'Content-Type': 'application/json'
};

Example Usage

// List all bids
const response = await fetch('https://api.bidmaster.com/v1/bids', {
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY'
  }
});

const data = await response.json();
console.log(data);

// Create a new bid
const newBid = await fetch('https://api.bidmaster.com/v1/bids', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    project_name: 'Office Renovation',
    client: 'XYZ Corp',
    amount: 750000,
    due_date: '2024-12-31'
  })
});

⚡ RATE LIMITING

Standard Tier
1,000 requests/hour
Enterprise Tier
10,000 requests/hour

Rate limit headers are included in all responses: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

🚨 ERROR CODES

200 OKRequest successful
201 CreatedResource created successfully
400 Bad RequestInvalid parameters
401 UnauthorizedInvalid or missing API key
429 Too Many RequestsRate limit exceeded
500 Internal ErrorServer error, please retry

READY TO BUILD?

Get your API key and start integrating BidMaster Pro into your workflow today.