canonical: https://jentic.com/apis/eveonline.com/eveonline

# Eveonline EVE Swagger Interface

The EVE Swagger Interface (ESI) is the official API for the EVE Online MMO, exposing 195 operations across 180 paths covering characters, corporations, alliances, contracts, market data, fleets, and the in-game universe. Players, third-party tool builders, and AI agents use ESI to read game state, react to in-game events, and automate out-of-client workflows like industry planning, market analysis, and corporation management. Authentication is OAuth 2.0 via EVE SSO, with scoped tokens controlling which character data the application can read or modify.

## For AI agents

Read EVE Online character, corporation, market, and universe data, and update calendar responses, mail, and contacts via official EVE SSO scopes.

## Scope

Does not handle account billing, game client launching, or in-client chat - use for reading and updating EVE Online game data through ESI only.

## Capabilities

- Read character profile, skills, assets, wallet, and contracts via the /characters endpoints
- Inspect corporation membership, structures, contacts, and roles through /corporations
- Pull alliance data, including member corporations and contact lists
- Query in-game market orders, prices, and history for trading and industry tools
- Manage character calendar event responses and personal contact lists
- Surface live universe and faction data for community sites and dashboards

## Use cases

### Industry and Market Analysis

Power third-party industry tools that recommend what to manufacture or trade by joining EVE market data with character blueprints and assets. ESI exposes per-region market orders, historical prices, and the character's blueprint library, which is enough to build production profitability models. A working prototype takes a few days for an experienced EVE developer.

Example prompt: Pull market orders for type_id 34 in region 10000002 and combine with the authenticated character's blueprint list to recommend the most profitable manufacture target

### Corporation Management Dashboard

Build a corporation management dashboard that surfaces member roles, structure status, and recent wallet movements without each director needing to log into the game client. ESI exposes the corporation, structures, and roles endpoints under proper scopes. Most CEOs adopt such tooling within a week of joining a larger alliance.

Example prompt: Pull `/corporations/{corporation_id}/members`, `/corporations/{corporation_id}/roles`, and `/corporations/{corporation_id}/structures` and produce a daily Slack summary of role changes

### Calendar and Mail Automation

Run an automation that reminds a character of fleet calendar events and updates calendar responses, then forwards relevant in-game mails to Discord. ESI exposes `/characters/{character_id}/calendar` and the mail endpoints under scoped OAuth tokens, which is the right surface for this kind of personal automation. Setup takes an afternoon for a single character.

Example prompt: Read `/characters/{character_id}/calendar`, update the response to RSVP yes for a specific event_id, and post a Discord reminder one hour before start

### AI Agent Integration via Jentic

Connect ESI to an AI agent through Jentic so a player or community manager can ask questions like 'what are my characters' wallet balances?' or 'what corp structures are vulnerable today?' in chat. Jentic isolates the OAuth tokens and resolves natural-language intents to the right ESI operation. Setup takes minutes once EVE SSO is connected.

Example prompt: Search Jentic for 'eve online wallet balance', load the GET `/characters/{character_id}/wallet` operation, and post the result to a private Discord channel

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/characters/{character_id}/` | Get character public information |
| GET | `/characters/{character_id}/assets/` | List a character's assets |
| GET | `/characters/{character_id}/calendar/` | List a character's calendar events |
| PUT | `/characters/{character_id}/calendar/{event_id}/` | Respond to a calendar event |
| GET | `/characters/{character_id}/blueprints/` | List a character's blueprints |
| GET | `/alliances/{alliance_id}/corporations/` | List corporations in an alliance |
| GET | `/alliances/{alliance_id}/contacts/` | List alliance contacts |

## Key resources

- **Characters** — Read character profile, assets, wallet, mail, contacts, calendar, and skills
- **Corporations** — Read and manage corporation members, roles, structures, and contacts
- **Alliances** — Inspect alliance metadata, member corporations, and contact lists
- **Markets** — Query regional market orders, prices, and historical data
- **Universe** — Read static and live universe data for systems, types, and factions

## Why Jentic

- **Setup:** Wiring the EVE Swagger Interface by hand means running the EVE SSO OAuth2 flow, refreshing bearer tokens, and mapping the right scope onto each of the many ESI endpoints yourself. Through Jentic you install once, import the EVE Swagger Interface from the API Directory, store the OAuth client once, and your agent calls it while Jentic refreshes the token for you.
- **Permission scoping:** ESI puts the character id in the URL path (`/characters/{character_id}/assets`/), so a rule can pin your agent to one character: it can read that character's assets, calendar, and blueprints and nothing else. You choose the operations it may call, so a write like updating a calendar event (PUT) is not included unless you add it.
- **Credential handling:** Your EVE SSO OAuth client and refresh token are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'read an eve online character's assets' or 'list alliance corporations', and Jentic returns the matching ESI operation with its input schema so the agent calls the right endpoint without paging through the reference docs.

## Related APIs

- **Riot Games API** — Game data API for League of Legends, Valorant, and other Riot titles
- **Steam Web API** — Cross-game player and library data on Steam
- **Discord API** — Push EVE Online events and reminders into Discord channels
- **Twitch API** — Drive Twitch overlays from live EVE Online ESI data

## FAQ

### What authentication does the EVE Swagger Interface use?

ESI uses OAuth 2.0 through EVE SSO, with scoped access tokens controlling which character endpoints an application can read or modify. Through Jentic, the OAuth client and refresh tokens sit in the encrypted vault and Jentic refreshes the bearer token automatically before each call.

### Can I read character assets and wallet through ESI?

Yes. GET `/characters/{character_id}/assets`/ lists assets and the wallet endpoints expose balance and journal entries under appropriate read scopes. These are the workhorse endpoints for industry, market, and personal-tracking tools.

### What are the rate limits for ESI?

ESI applies an error-rate-limited model rather than a fixed RPS quota: keep error responses low and use the X-Esi-Error-Limit-Remain header to back off. Most read endpoints use cache headers heavily, so respect Expires and Last-Modified to avoid unnecessary calls.

### How do I list a character's calendar events through Jentic?

Search Jentic for 'eve online character calendar', load the GET `/characters/{character_id}/calendar`/ operation, and execute it. Install with pip install jentic and use the async search, load, execute flow. The OAuth refresh is handled by Jentic's credential layer.

### Does ESI support corporation structure management?

Yes, with appropriate roles and scopes. `/corporations/{corporation_id}/structures` returns a corporation's owned structures, and `/corporations/{corporation_id}/roles` returns role assignments for members. Both are widely used in alliance-scale management tooling.

### Can I pull EVE Online market data without a logged-in character?

Yes. The market endpoints under /markets/ expose public regional market orders, prices, and history without requiring user authentication, so they are suited to public market dashboards and bots.

### Can I limit what my agent is allowed to do with the EVE Swagger Interface?

Yes. Because Jentic One is self-hosted, your own rules decide which ESI operations and OAuth scopes the agent may use. Since ESI carries the character id in the URL path, such as `/characters/{character_id}/assets`/, you can pin the agent to a single character and let it read only that character's assets, calendar, and blueprints. You pick exactly which operations it may call, so a write like the PUT to respond to a calendar event stays out of reach unless you explicitly add it.
