# Account

# Retrieve Account

GET https://api.wolfeo.me/v1/account

Returns basic information about the authenticated account, including plan details and current usage limits.

# Example Request

curl --request GET "https://api.wolfeo.me/v1/account" \
  --header "Authorization: Bearer YOUR_API_KEY"

# Sample Return

{
    "success": true,
    "data": {
        "name": "John Doe",
        "email": "john@example.com",
        "plan": "pro",
        "on_trial": false,
        "limits": {
            "contacts": 10000,
            "campaigns": 50,
            "emails": 100000,
            "funnels": 20,
            "monthly_recipients": 50000
        },
        "quota": {
            "monthly_recipients": {
                "limit": 50000,
                "used": 7309,
                "remaining": 42691,
                "resets_at": "2026-07-01T00:00:00.000000Z"
            },
            "contacts": {
                "limit": 10000,
                "used": 3480,
                "remaining": 6520
            },
            "campaigns": {
                "limit": 50,
                "used": 12,
                "remaining": 38
            },
            "funnels": {
                "limit": 20,
                "used": 4,
                "remaining": 16
            }
        }
    }
}

TIP

limits values represent the remaining quota for the current billing period. A value of null means unlimited.

TIP

quota is the same payload as Retrieve Sending Quota, embedded here so a dashboard that already calls this endpoint does not need a second round-trip.


# Retrieve Sending Quota

GET https://api.wolfeo.me/v1/sending-quota

Returns the consumption snapshot alone: limit, usage and remaining allowance for each of the four metered slots. Same payload as data.quota above, split out for clients that only need to answer "am I close to my monthly limit?".

# Example Request

curl --request GET "https://api.wolfeo.me/v1/sending-quota" \
  --header "Authorization: Bearer YOUR_API_KEY"

# Sample Return

{
    "success": true,
    "data": {
        "monthly_recipients": {
            "limit": 50000,
            "used": 7309,
            "remaining": 42691,
            "resets_at": "2026-07-01T00:00:00.000000Z"
        },
        "contacts": {
            "limit": 10000,
            "used": 3480,
            "remaining": 6520
        },
        "campaigns": {
            "limit": 50,
            "used": 12,
            "remaining": 38
        },
        "funnels": {
            "limit": 20,
            "used": 4,
            "remaining": 16
        }
    }
}

# Quota slots

Slot Counts
monthly_recipients Unique recipients emailed in the current calendar month
contacts Contacts stored in the account
campaigns Campaigns created
funnels Funnels created

TIP

limit: null means no enforced limit, and remaining is then null too rather than a misleading 0. That is the case on unlimited plans and on legacy plans that were never assigned a value. Only monthly_recipients carries resets_at, the start of the next calendar month; the other three are not periodic.

# Possible Errors

Code HTTP Description
UNAUTHORIZED 401 Invalid or missing API key

# What's next

  • Contacts โ€” manage your contacts
  • Campaigns โ€” create and schedule campaigns