CCP Games · Agentic Access

CCP Games Agentic Access

x-agentic-access generated

CCP Games exposes 197 API operations that an AI agent could call, of which 34 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 163 read, 32 write, and 2 physical.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

CompanyGamingGamesMMOEVE OnlineDeveloper PlatformOAuthOpenID ConnectPlayer DataVirtual Economy
Operations: 197 Acting: 34 Human-in-the-loop: 0 Method: generated

By consequence

read 163 write 32 physical 2

Highest-consequence actions

The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.

MethodPathConsequenceHuman-in-loop
POST /characters/{character_id}/cspa physical conditional
POST /characters/{character_id}/mail physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-18'
method: generated
source: openapi/ccp-games-esi-openapi-original.json
description: Recommended x-agentic-access execution contracts, classified heuristically from
  the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
  audience per deployment. See research/curity/agentic-governance/.
summary:
  operations: 197
  by_action_class:
    connected: 163
    acting: 34
  by_consequence:
    read: 163
    write: 32
    physical: 2
  human_in_the_loop_required: 0
operations:
- path: /alliances
  method: get
  operationId: GetAlliances
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /alliances/{alliance_id}
  method: get
  operationId: GetAlliancesAllianceId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /alliances/{alliance_id}/contacts
  method: get
  operationId: GetAlliancesAllianceIdContacts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-alliances.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /alliances/{alliance_id}/contacts/labels
  method: get
  operationId: GetAlliancesAllianceIdContactsLabels
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-alliances.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /alliances/{alliance_id}/corporations
  method: get
  operationId: GetAlliancesAllianceIdCorporations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /alliances/{alliance_id}/icons
  method: get
  operationId: GetAlliancesAllianceIdIcons
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /characters/affiliation
  method: post
  operationId: PostCharactersAffiliation
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}
  method: get
  operationId: GetCharactersCharacterId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/agents_research
  method: get
  operationId: GetCharactersCharacterIdAgentsResearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_agents_research.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/assets
  method: get
  operationId: GetCharactersCharacterIdAssets
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-assets.read_assets.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/assets/locations
  method: post
  operationId: PostCharactersCharacterIdAssetsLocations
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-assets.read_assets.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/assets/names
  method: post
  operationId: PostCharactersCharacterIdAssetsNames
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-assets.read_assets.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/attributes
  method: get
  operationId: GetCharactersCharacterIdAttributes
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-skills.read_skills.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/blueprints
  method: get
  operationId: GetCharactersCharacterIdBlueprints
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_blueprints.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/calendar
  method: get
  operationId: GetCharactersCharacterIdCalendar
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-calendar.read_calendar_events.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/calendar/{event_id}
  method: get
  operationId: GetCharactersCharacterIdCalendarEventId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-calendar.read_calendar_events.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/calendar/{event_id}
  method: put
  operationId: PutCharactersCharacterIdCalendarEventId
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-calendar.respond_calendar_events.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/calendar/{event_id}/attendees
  method: get
  operationId: GetCharactersCharacterIdCalendarEventIdAttendees
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-calendar.read_calendar_events.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/clones
  method: get
  operationId: GetCharactersCharacterIdClones
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-clones.read_clones.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/contacts
  method: delete
  operationId: DeleteCharactersCharacterIdContacts
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-characters.write_contacts.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/contacts
  method: get
  operationId: GetCharactersCharacterIdContacts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/contacts
  method: post
  operationId: PostCharactersCharacterIdContacts
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-characters.write_contacts.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/contacts
  method: put
  operationId: PutCharactersCharacterIdContacts
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-characters.write_contacts.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/contacts/labels
  method: get
  operationId: GetCharactersCharacterIdContactsLabels
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/contracts
  method: get
  operationId: GetCharactersCharacterIdContracts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_character_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/contracts/{contract_id}/bids
  method: get
  operationId: GetCharactersCharacterIdContractsContractIdBids
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_character_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/contracts/{contract_id}/items
  method: get
  operationId: GetCharactersCharacterIdContractsContractIdItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_character_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/corporationhistory
  method: get
  operationId: GetCharactersCharacterIdCorporationhistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/cspa
  method: post
  operationId: PostCharactersCharacterIdCspa
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - esi-characters.read_contacts.v1
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/fatigue
  method: get
  operationId: GetCharactersCharacterIdFatigue
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_fatigue.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/fittings
  method: get
  operationId: GetCharactersCharacterIdFittings
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-fittings.read_fittings.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/fittings
  method: post
  operationId: PostCharactersCharacterIdFittings
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-fittings.write_fittings.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/fittings/{fitting_id}
  method: delete
  operationId: DeleteCharactersCharacterIdFittingsFittingId
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-fittings.write_fittings.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/fleet
  method: get
  operationId: GetCharactersCharacterIdFleet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-fleets.read_fleet.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/fw/stats
  method: get
  operationId: GetCharactersCharacterIdFwStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_fw_stats.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/implants
  method: get
  operationId: GetCharactersCharacterIdImplants
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-clones.read_implants.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/industry/jobs
  method: get
  operationId: GetCharactersCharacterIdIndustryJobs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_character_jobs.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/killmails/recent
  method: get
  operationId: GetCharactersCharacterIdKillmailsRecent
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-killmails.read_killmails.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/location
  method: get
  operationId: GetCharactersCharacterIdLocation
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-location.read_location.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/loyalty/points
  method: get
  operationId: GetCharactersCharacterIdLoyaltyPoints
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_loyalty.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mail
  method: get
  operationId: GetCharactersCharacterIdMail
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-mail.read_mail.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mail
  method: post
  operationId: PostCharactersCharacterIdMail
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - esi-mail.send_mail.v1
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/mail/labels
  method: get
  operationId: GetCharactersCharacterIdMailLabels
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-mail.read_mail.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mail/labels
  method: post
  operationId: PostCharactersCharacterIdMailLabels
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-mail.organize_mail.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/mail/labels/{label_id}
  method: delete
  operationId: DeleteCharactersCharacterIdMailLabelsLabelId
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-mail.organize_mail.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/mail/lists
  method: get
  operationId: GetCharactersCharacterIdMailLists
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-mail.read_mail.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mail/{mail_id}
  method: delete
  operationId: DeleteCharactersCharacterIdMailMailId
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-mail.organize_mail.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/mail/{mail_id}
  method: get
  operationId: GetCharactersCharacterIdMailMailId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-mail.read_mail.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mail/{mail_id}
  method: put
  operationId: PutCharactersCharacterIdMailMailId
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-mail.organize_mail.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /characters/{character_id}/medals
  method: get
  operationId: GetCharactersCharacterIdMedals
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_medals.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/mining
  method: get
  operationId: GetCharactersCharacterIdMining
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_character_mining.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/notifications
  method: get
  operationId: GetCharactersCharacterIdNotifications
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_notifications.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/notifications/contacts
  method: get
  operationId: GetCharactersCharacterIdNotificationsContacts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_notifications.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/online
  method: get
  operationId: GetCharactersCharacterIdOnline
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-location.read_online.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/orders
  method: get
  operationId: GetCharactersCharacterIdOrders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-markets.read_character_orders.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/orders/history
  method: get
  operationId: GetCharactersCharacterIdOrdersHistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-markets.read_character_orders.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/planets
  method: get
  operationId: GetCharactersCharacterIdPlanets
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-planets.manage_planets.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/planets/{planet_id}
  method: get
  operationId: GetCharactersCharacterIdPlanetsPlanetId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-planets.manage_planets.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/portrait
  method: get
  operationId: GetCharactersCharacterIdPortrait
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/roles
  method: get
  operationId: GetCharactersCharacterIdRoles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_corporation_roles.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/search
  method: get
  operationId: GetCharactersCharacterIdSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-search.search_structures.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/ship
  method: get
  operationId: GetCharactersCharacterIdShip
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-location.read_ship_type.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/skillqueue
  method: get
  operationId: GetCharactersCharacterIdSkillqueue
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-skills.read_skillqueue.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/skills
  method: get
  operationId: GetCharactersCharacterIdSkills
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-skills.read_skills.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/standings
  method: get
  operationId: GetCharactersCharacterIdStandings
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_standings.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/titles
  method: get
  operationId: GetCharactersCharacterIdTitles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-characters.read_titles.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/wallet
  method: get
  operationId: GetCharactersCharacterIdWallet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-wallet.read_character_wallet.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/wallet/journal
  method: get
  operationId: GetCharactersCharacterIdWalletJournal
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-wallet.read_character_wallet.v1
    token:
      max-ttl: 3600
    audit: none
- path: /characters/{character_id}/wallet/transactions
  method: get
  operationId: GetCharactersCharacterIdWalletTransactions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-wallet.read_character_wallet.v1
    token:
      max-ttl: 3600
    audit: none
- path: /contracts/public/bids/{contract_id}
  method: get
  operationId: GetContractsPublicBidsContractId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /contracts/public/items/{contract_id}
  method: get
  operationId: GetContractsPublicItemsContractId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /contracts/public/{region_id}
  method: get
  operationId: GetContractsPublicRegionId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /corporation/{corporation_id}/mining/extractions
  method: get
  operationId: GetCorporationCorporationIdMiningExtractions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_corporation_mining.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporation/{corporation_id}/mining/observers
  method: get
  operationId: GetCorporationCorporationIdMiningObservers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_corporation_mining.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporation/{corporation_id}/mining/observers/{observer_id}
  method: get
  operationId: GetCorporationCorporationIdMiningObserversObserverId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_corporation_mining.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/npccorps
  method: get
  operationId: GetCorporationsNpccorps
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}
  method: get
  operationId: GetCorporationsCorporationId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/alliancehistory
  method: get
  operationId: GetCorporationsCorporationIdAlliancehistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/assets
  method: get
  operationId: GetCorporationsCorporationIdAssets
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-assets.read_corporation_assets.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/assets/locations
  method: post
  operationId: PostCorporationsCorporationIdAssetsLocations
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-assets.read_corporation_assets.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /corporations/{corporation_id}/assets/names
  method: post
  operationId: PostCorporationsCorporationIdAssetsNames
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - esi-assets.read_corporation_assets.v1
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /corporations/{corporation_id}/blueprints
  method: get
  operationId: GetCorporationsCorporationIdBlueprints
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_blueprints.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/contacts
  method: get
  operationId: GetCorporationsCorporationIdContacts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/contacts/labels
  method: get
  operationId: GetCorporationsCorporationIdContactsLabels
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_contacts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/containers/logs
  method: get
  operationId: GetCorporationsCorporationIdContainersLogs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_container_logs.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/contracts
  method: get
  operationId: GetCorporationsCorporationIdContracts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_corporation_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/contracts/{contract_id}/bids
  method: get
  operationId: GetCorporationsCorporationIdContractsContractIdBids
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_corporation_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/contracts/{contract_id}/items
  method: get
  operationId: GetCorporationsCorporationIdContractsContractIdItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-contracts.read_corporation_contracts.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/customs_offices
  method: get
  operationId: GetCorporationsCorporationIdCustomsOffices
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-planets.read_customs_offices.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/divisions
  method: get
  operationId: GetCorporationsCorporationIdDivisions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_divisions.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/facilities
  method: get
  operationId: GetCorporationsCorporationIdFacilities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_facilities.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/fw/stats
  method: get
  operationId: GetCorporationsCorporationIdFwStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_fw_stats.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/icons
  method: get
  operationId: GetCorporationsCorporationIdIcons
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/industry/jobs
  method: get
  operationId: GetCorporationsCorporationIdIndustryJobs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-industry.read_corporation_jobs.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/killmails/recent
  method: get
  operationId: GetCorporationsCorporationIdKillmailsRecent
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-killmails.read_corporation_killmails.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/medals
  method: get
  operationId: GetCorporationsCorporationIdMedals
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_medals.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/medals/issued
  method: get
  operationId: GetCorporationsCorporationIdMedalsIssued
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_medals.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/members
  method: get
  operationId: GetCorporationsCorporationIdMembers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_corporation_membership.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/members/limit
  method: get
  operationId: GetCorporationsCorporationIdMembersLimit
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.track_members.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/members/titles
  method: get
  operationId: GetCorporationsCorporationIdMembersTitles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.read_titles.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/membertracking
  method: get
  operationId: GetCorporationsCorporationIdMembertracking
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - esi-corporations.track_members.v1
    token:
      max-ttl: 3600
    audit: none
- path: /corporations/{corporation_id}/orders
  method: get
  operationId: GetCorporationsCorporationIdOrders
  x-agentic-access:
    action-class: connected
    consequence: re

# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ccp-games/refs/heads/main/agentic-access/ccp-games-agentic-access.yml