Skip to content

API Settings

API Settings configure access to the Angage ERP REST API, enabling integration with external systems, custom applications, and automation tools.

Overview

API Settings enable you to:

  • Generate API keys
  • Manage access tokens
  • Configure rate limits
  • Monitor API usage
  • Control permissions
  • View API documentation

Accessing API Settings

Navigate to Settings → Integrations → API Settings from the main menu.

API Overview

API Dashboard

API Dashboard

API Status: ✓ Active
Base URL: https://api.angage.com/v1

Usage This Month:
├─ Total Requests: 245,678
├─ Successful: 243,456 (99.1%)
├─ Failed: 2,222 (0.9%)
└─ Rate Limit Hits: 45

Active API Keys: 5
├─ Production: 3
├─ Development: 2
└─ Webhook Endpoints: 8

Quick Links:
├─ [API Documentation]
├─ [Generate New Key]
├─ [View Usage Reports]
└─ [Webhook Configuration]

API Keys

Key Management

API Keys

Production Keys:
┌────────────────────────────────────────────────────────────────┐
│ Name           │ Key (prefix)     │ Created    │ Last Used    │
├────────────────────────────────────────────────────────────────┤
│ Main App       │ ak_live_8x7y... │ Jan 01     │ 2 min ago    │
│ Mobile App     │ ak_live_2z3a... │ Jan 10     │ 5 min ago    │
│ Analytics      │ ak_live_5b6c... │ Jan 15     │ 1 hour ago   │
└────────────────────────────────────────────────────────────────┘

Development Keys:
┌────────────────────────────────────────────────────────────────┐
│ Name           │ Key (prefix)     │ Created    │ Last Used    │
├────────────────────────────────────────────────────────────────┤
│ Dev Testing    │ ak_test_1a2b... │ Dec 15     │ Today        │
│ QA Environment │ ak_test_3c4d... │ Dec 20     │ Yesterday    │
└────────────────────────────────────────────────────────────────┘

[+ Generate New API Key]

Create API Key

Generate API Key

Key Details:
├─ Key Name: [Mobile App Integration]
├─ Description: [API key for iOS/Android mobile application]
├─ Environment: ● Production ○ Development
└─ Expiration: ○ Never ● After [365] days

Permissions:
├─ Scope: [Custom ▼]
│  ├─ Full Access
│  ├─ Read Only
│  └─ Custom

└─ Module Access:
   ├─ [x] Customers (Read, Write)
   ├─ [x] Products (Read only)
   ├─ [x] Orders (Read, Write)
   ├─ [x] Invoices (Read only)
   ├─ [ ] Payments (No access)
   ├─ [x] Inventory (Read only)
   └─ [ ] Settings (No access)

Rate Limiting:
├─ Requests per minute: [60]
├─ Requests per hour: [1,000]
└─ Requests per day: [10,000]

IP Restrictions:
├─ [ ] Restrict to specific IPs
└─ Allowed IPs: [Add IP addresses...]

[Generate Key]

Key Generated

API Key Generated Successfully

⚠️ Copy this key now - it won't be shown again!

┌────────────────────────────────────────────────────────────────┐
│ API Key: ak_live_8x7y9z1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7     │
└────────────────────────────────────────────────────────────────┘

[Copy to Clipboard]

Key Details:
├─ Name: Mobile App Integration
├─ Environment: Production
├─ Created: January 22, 2026 10:30 AM
├─ Expires: January 22, 2027
└─ Created By: John Smith

Quick Start:
┌────────────────────────────────────────────────────────────────┐
│ curl -X GET "https://api.angage.com/v1/customers" \           │
│   -H "Authorization: Bearer ak_live_8x7y9z1a2b3c..."          │
└────────────────────────────────────────────────────────────────┘

[Done]

Rate Limiting

Rate Limit Configuration

Rate Limit Settings

Default Limits (per API key):
├─ Requests per second: [10]
├─ Requests per minute: [100]
├─ Requests per hour: [2,000]
└─ Requests per day: [20,000]

Burst Allowance:
├─ [x] Allow short bursts
├─ Burst size: [20] requests
└─ Burst window: [5] seconds

Rate Limit Response:
├─ HTTP Status: 429 Too Many Requests
├─ Include Retry-After header: [x]
└─ Include rate limit headers: [x]

Headers Included:
├─ X-RateLimit-Limit: Maximum requests allowed
├─ X-RateLimit-Remaining: Requests remaining
├─ X-RateLimit-Reset: Time when limit resets
└─ Retry-After: Seconds to wait before retry

[Save Rate Limit Settings]

Key-Specific Limits

Rate Limits by API Key

┌────────────────────────────────────────────────────────────────┐
│ API Key        │ Per Min │ Per Hour │ Per Day │ Custom         │
├────────────────────────────────────────────────────────────────┤
│ Main App       │ 200     │ 5,000    │ 50,000  │ ✓              │
│ Mobile App     │ 60      │ 1,000    │ 10,000  │ Default        │
│ Analytics      │ 30      │ 500      │ 5,000   │ ✓              │
│ Dev Testing    │ 100     │ 2,000    │ 20,000  │ Default        │
└────────────────────────────────────────────────────────────────┘

[Edit Limits]

API Usage

Usage Dashboard

API Usage Analytics

Time Period: [Last 30 Days ▼]

Request Volume:
┌────────────────────────────────────────────────────────────────┐
│ Daily Requests (Last 30 Days)                                  │
│ ████████████████████████████████████████████████████████████  │
│ 8.2K avg | 12.5K peak | 245.7K total                          │
└────────────────────────────────────────────────────────────────┘

By Endpoint:
├─ GET /customers: 45,678 (18.6%)
├─ GET /products: 38,901 (15.8%)
├─ GET /orders: 34,567 (14.1%)
├─ POST /orders: 23,456 (9.5%)
├─ GET /inventory: 21,234 (8.6%)
└─ Other: 81,842 (33.4%)

By API Key:
├─ Main App: 156,789 (63.8%)
├─ Mobile App: 56,789 (23.1%)
├─ Analytics: 23,456 (9.5%)
└─ Development: 8,644 (3.6%)

Response Times:
├─ Average: 145ms
├─ P95: 320ms
├─ P99: 580ms
└─ Slowest: GET /reports/sales (avg 450ms)

Error Analysis

API Errors (Last 30 Days)

Error Summary:
├─ Total Errors: 2,222
├─ Error Rate: 0.9%
└─ Most Common: 401 Unauthorized

Error Breakdown:
┌────────────────────────────────────────────────────────────────┐
│ Error Code       │ Count │ Percentage │ Trend                  │
├────────────────────────────────────────────────────────────────┤
│ 401 Unauthorized │ 1,234 │ 55.5%      │ ↓ Decreasing           │
│ 404 Not Found    │ 567   │ 25.5%      │ → Stable               │
│ 429 Rate Limited │ 234   │ 10.5%      │ ↑ Increasing           │
│ 400 Bad Request  │ 156   │ 7.0%       │ → Stable               │
│ 500 Server Error │ 31    │ 1.5%       │ ↓ Decreasing           │
└────────────────────────────────────────────────────────────────┘

Recent Errors:
├─ Jan 22 10:45 - 401 - Invalid API key (Mobile App)
├─ Jan 22 10:30 - 429 - Rate limit exceeded (Analytics)
├─ Jan 22 10:15 - 404 - Customer CUST-99999 not found
└─ [View All Errors]

Authentication

Authentication Methods

API Authentication

Supported Methods:
├─ [x] Bearer Token (recommended)
├─ [x] API Key Header
└─ [ ] OAuth 2.0 (enterprise)

Bearer Token:
┌────────────────────────────────────────────────────────────────┐
│ Authorization: Bearer ak_live_8x7y9z1a2b3c4d5e...             │
└────────────────────────────────────────────────────────────────┘

API Key Header:
┌────────────────────────────────────────────────────────────────┐
│ X-API-Key: ak_live_8x7y9z1a2b3c4d5e...                        │
└────────────────────────────────────────────────────────────────┘

Security Settings:
├─ [x] Require HTTPS only
├─ [x] Validate request signatures
├─ [x] Log all API requests
└─ Token expiration: [Never ▼]

API Documentation

Interactive Documentation

API Documentation

Available at: https://api.angage.com/docs

Documentation Features:
├─ Interactive API Explorer
├─ Code samples (cURL, Python, JavaScript, PHP)
├─ Request/Response schemas
├─ Authentication guide
└─ Webhook documentation

Quick Reference:
┌────────────────────────────────────────────────────────────────┐
│ Resource        │ Endpoints                                    │
├────────────────────────────────────────────────────────────────┤
│ Customers       │ GET, POST, PUT, DELETE /customers            │
│ Products        │ GET, POST, PUT, DELETE /products             │
│ Orders          │ GET, POST, PUT /orders                       │
│ Invoices        │ GET, POST /invoices                          │
│ Inventory       │ GET, PUT /inventory                          │
│ Payments        │ GET, POST /payments                          │
└────────────────────────────────────────────────────────────────┘

[Open API Documentation] [Download OpenAPI Spec]

Sample Request

API Example: Create Customer

Endpoint: POST /v1/customers

Request:
┌────────────────────────────────────────────────────────────────┐
│ curl -X POST "https://api.angage.com/v1/customers" \          │
│   -H "Authorization: Bearer ak_live_..." \                     │
│   -H "Content-Type: application/json" \                        │
│   -d '{                                                        │
│     "name": "Acme Corporation",                                │
│     "email": "[email protected]",                               │
│     "phone": "555-123-4567",                                   │
│     "billing_address": {                                       │
│       "street": "123 Main St",                                 │
│       "city": "New York",                                      │
│       "state": "NY",                                           │
│       "zip": "10001",                                          │
│       "country": "US"                                          │
│     }                                                          │
│   }'                                                           │
└────────────────────────────────────────────────────────────────┘

Response (201 Created):
┌────────────────────────────────────────────────────────────────┐
│ {                                                              │
│   "id": "cust_abc123def456",                                   │
│   "code": "CUST-12345",                                        │
│   "name": "Acme Corporation",                                  │
│   "email": "[email protected]",                                 │
│   "created_at": "2026-01-22T10:30:00Z"                        │
│ }                                                              │
└────────────────────────────────────────────────────────────────┘

Best Practices

Security

  • Use HTTPS only
  • Rotate keys periodically
  • Restrict IP addresses
  • Monitor for abuse

Performance

  • Implement caching
  • Use pagination
  • Batch requests when possible
  • Handle rate limits gracefully

Integration

  • Handle errors properly
  • Implement retries
  • Log API activity
  • Keep documentation updated

Troubleshooting

Common Issues

401 Unauthorized

  • Verify API key is valid
  • Check key hasn't expired
  • Confirm key has required permissions
  • Verify authentication header format

429 Rate Limited

  • Implement exponential backoff
  • Check rate limit headers
  • Consider requesting higher limits
  • Optimize request patterns

500 Server Error

  • Check request payload
  • Review API logs
  • Contact support if persistent
  • Try again later

Related Documentation

Learn about Webhooks for receiving real-time notifications from the API.

Angage ERP Documentation