Rate Limits
Retrieve rate limit information for the current user.
Making Requests
Use the user() method on the utilities resource to get rate limit information:
user
public function user(): User
Retrieve rate limit information for the current user, including credit usage and limits.
Notes
- Rate limits track credits, not requests. Most requests consume 1 credit, but bulk requests or options requests may consume multiple credits.
- Free/Starter/Trader plans have daily limits.
- Prime users have per-minute limits.
- The
resettimestamp indicates when the current rate limit window resets (UTC).
Returns
-
UserA User response object containing rate limit information.
- Example (Check Limits)
- Example (Usage Warning)
- Example (Rate Limit Header)
<?php
use MarketDataApp\Client;
$client = new Client();
// Get rate limit information
$user = $client->utilities->user();
echo "Rate Limit Status\n";
echo "=================\n";
echo "Limit: " . number_format($user->limit) . " credits\n";
echo "Remaining: " . number_format($user->remaining) . " credits\n";
echo "Used: " . number_format($user->consumed) . " credits\n";
echo "Resets: " . $user->reset->format('Y-m-d H:i:s T') . "\n";
// Calculate usage percentage
$usagePercent = (($user->limit - $user->remaining) / $user->limit) * 100;
echo "Usage: " . number_format($usagePercent, 1) . "%\n";
Output
Rate Limit Status
=================
Limit: 10,000 credits
Remaining: 9,850 credits
Used: 1 credits
Resets: 2024-01-16 00:00:00 UTC
Usage: 1.5%
<?php
use MarketDataApp\Client;
$client = new Client();
$user = $client->utilities->user();
// Check if approaching rate limit
$usagePercent = (($user->limit - $user->remaining) / $user->limit) * 100;
if ($usagePercent > 90) {
echo "⚠️ WARNING: You've used " . number_format($usagePercent, 1) . "% of your daily limit!\n";
echo "Only " . number_format($user->remaining) . " credits remaining.\n";
echo "Limit resets at: " . $user->reset->format('H:i:s T') . "\n";
} elseif ($usagePercent > 75) {
echo "ℹ️ Notice: You've used " . number_format($usagePercent, 1) . "% of your daily limit.\n";
} else {
echo "