Limits API

Monitor Salesforce API limits and org usage.

Get All Limits

Go
limits, err := client.Limits().GetLimits(ctx)

// Daily API requests
fmt.Printf("API Requests: %d / %d (%.1f%% used)\n",
    limits.DailyApiRequests.Remaining,
    limits.DailyApiRequests.Max,
    100.0 - float64(limits.DailyApiRequests.Remaining)/float64(limits.DailyApiRequests.Max)*100)

// Data storage
fmt.Printf("Data Storage: %d MB / %d MB\n",
    limits.DataStorageMB.Remaining,
    limits.DataStorageMB.Max)

Monitor Specific Limits

Go
// Check if nearing limits
limits, _ := client.Limits().GetLimits(ctx)

if limits.DailyApiRequests.PercentUsed() > 80 {
    log.Warn("API requests nearing limit!")
}

if limits.DailyBulkApiRequests.Remaining < 100 {
    log.Warn("Bulk API requests running low")
}

Available Limits

Limit Description
DailyApiRequests Daily REST API calls
DailyBulkApiRequests Daily Bulk API batches
DailyAsyncApexExecutions Async Apex executions
DailyStreamingApiEvents Streaming API events
DataStorageMB Data storage (MB)
FileStorageMB File storage (MB)
PermissionSets Custom permission sets
SingleEmail Single email invocations
MassEmail Mass email invocations