---
title: "Get rate limit information for authenticated user"
method: GET
path: "/api/v1/ratelimit"
tags: ["Rate Limit Information API"]
---

# Get rate limit information for authenticated user

`GET /api/v1/ratelimit`

Retrieves comprehensive rate limit information including current usage, limits, and renewal date.

**Authentication**:
- Requires a valid API key passed as a query parameter (`api_key`)
- Works with both active and expired API keys
- This endpoint does not support anonymous/IP-based access

**Response Includes**:
- Current subscription plan ID and name
- IP API quota (limit, remaining, used, usage percentage)
- Email API quota (limit, remaining, used, usage percentage)
- Rate limit interval in seconds
- Next renewal/reset date (ISO 8601 format)
- Subscription status (active, past_due, cancelled, etc.)

**Rate Limit Intervals**:
- Daily: 86400 seconds
- Monthly: 2678400 seconds (~31 days)
- Yearly: 31536000 seconds (~365 days)

**Use Cases**:
- Display usage dashboard in client applications
- Monitor quota consumption to prevent rate limit errors
- Plan upgrades based on usage patterns
- Billing and subscription management

**Example Response**:
```json
{
  "plan_id": "550712",
  "plan_name": "Professional Monthly",
  "ip_api": {
    "limit": 100000,
    "remaining": 87532,
    "used": 12468,
    "usage_percent": 12.47
  },
  "email_api": {
    "limit": 10000,
    "remaining": 9850,
    "used": 150,
    "usage_percent": 1.50
  },
  "interval_seconds": 2678400,
  "next_renewal_date": "2025-11-26",
  "status": "active"
}
```

## Query parameters

- `api_key` string, required

## Response `200`

Rate limit information retrieved successfully

- RateLimitInfoDto — Rate limit information for the authenticated user, including current usage, limits, and renewal date
  - `plan_id` string, required — Subscription plan ID or 'default' for free tier users
  - `plan_name` string — Human-readable plan name (if available)
  - `ip_api` ApiLimitInfo, required — Rate limit details for a specific API type
    - `limit` integer, required — Maximum number of requests allowed in the rate limit interval
    - `remaining` integer, required — Remaining requests available in the current interval
    - `used` integer, required — Number of requests consumed in the current interval
    - `usage_percent` number, double, required — Percentage of quota utilized (0-100)
  - `email_api` ApiLimitInfo, required — Rate limit details for a specific API type
    - `limit` integer, required — Maximum number of requests allowed in the rate limit interval
    - `remaining` integer, required — Remaining requests available in the current interval
    - `used` integer, required — Number of requests consumed in the current interval
    - `usage_percent` number, double, required — Percentage of quota utilized (0-100)
  - `interval_seconds` integer, required — Rate limit interval in seconds (time period for quota renewal)
  - `next_renewal_date` string, date — Next billing/renewal date when the quota will be reset (ISO 8601 date format)
  - `status` string, nullable — Subscription status (active, past_due, cancelled, etc.)

## Other responses

- `400` — Bad Request - API key is required
- `404` — Not Found - API key does not exist in the system
- `500` — Internal Server Error - Unable to retrieve rate limit information

---

[API](https://skmtc.dev/ip-api/apis/ip-api-io-ip-geolocation-security-api.md) · [All operations](https://skmtc.dev/ip-api/apis/ip-api-io-ip-geolocation-security-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ip-api/ip-api-io-ip-geolocation-security-api/revisions/a6862f586bf3/schema)
