Cisco XDR Session Cookie API

Cookie-based session validation

Operations 3

GET /iroh/iroh-auth/session/validate Validate the current session
POST /iroh/iroh-auth/session/exchange Exchange session cookie for a short-lived JWT access token
POST /iroh/iroh-auth/session/logout Invalidate the current session

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cisco-xdr-session-cookie-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cisco-xdr-session-cookie-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: IROH-Auth Session Cookie API
  version: 1.0.107
  license:
    name: All Rights Reserved
    url: https://www.cisco.com
  contact:
    name: Cisco Security Business Group -- Advanced Threat
    email: cisco-intel-api-support@cisco.com
  description: API Handling Logins
  x-provenance:
    method: harvested
    authored_by: Cisco XDR
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
  x-evidence:
  - type: source
    url: https://visibility.amp.cisco.com/iroh/iroh-auth/index.html
  - type: raw
    url: https://visibility.amp.cisco.com/iroh/iroh-auth/swagger.json
servers:
- url: https://visibility.amp.cisco.com/
security:
- iroh: []
- AuthorizationHeader: []
- oauth2:
  - telemetry
  - integration
  - private-intel
  - admin
  - cognitive
  - profile
  - inspect
  - asset
  - event
  - feedback
  - sse
  - registry
  - users
  - investigation
  - invite
  - casebook
  - orbital
  - enrich
  - oauth
  - vault
  - response
  - notification
  - global-intel:read
  - webhook
  - ao
tags:
- name: Session Cookie
  description: Cookie-based session validation
paths:
  /iroh/iroh-auth/session/validate:
    get:
      x-no-doc: false
      tags:
      - Session Cookie
      summary: Validate the current session
      description: "Validates the iroh-session cookie and X-Tab-Id header. \nReturns session info if valid. \nRotates the session-id when the rotation interval is exceeded.\n\n**Links**:\n  - [Data Model](/iroh/doc/iroh-auth/#data-model)\n\n*Requires credentials on cross-origin requests (emits `Access-Control-Allow-Credentials: true`).*"
      x-cors-credentials?: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionStatusResponse'
            application/x-yaml:
              schema:
                $ref: '#/components/schemas/SessionStatusResponse'
            application/edn:
              schema:
                $ref: '#/components/schemas/SessionStatusResponse'
            application/transit+json:
              schema:
                $ref: '#/components/schemas/SessionStatusResponse'
            application/transit+msgpack:
              schema:
                $ref: '#/components/schemas/SessionStatusResponse'
  /iroh/iroh-auth/session/exchange:
    post:
      x-no-doc: false
      tags:
      - Session Cookie
      summary: Exchange session cookie for a short-lived JWT access token
      description: "Validates the iroh-session cookie and returns a fresh \nJWT access token for use in Authorization headers. \nThe JWT is short-lived (see expires_in in the response). \nNo refresh token is issued — the session cookie IS the \nrefresh mechanism.\n\n**Links**:\n  - [Data Model](/iroh/doc/iroh-auth/#data-model)\n\n*Requires credentials on cross-origin requests (emits `Access-Control-Allow-Credentials: true`).*"
      x-cors-credentials?: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionTokenExchangeResponse'
            application/x-yaml:
              schema:
                $ref: '#/components/schemas/SessionTokenExchangeResponse'
            application/edn:
              schema:
                $ref: '#/components/schemas/SessionTokenExchangeResponse'
            application/transit+json:
              schema:
                $ref: '#/components/schemas/SessionTokenExchangeResponse'
            application/transit+msgpack:
              schema:
                $ref: '#/components/schemas/SessionTokenExchangeResponse'
  /iroh/iroh-auth/session/logout:
    post:
      x-no-doc: false
      tags:
      - Session Cookie
      summary: Invalidate the current session
      description: 'Invalidates the server-side session and clears the cookie.


        *Requires credentials on cross-origin requests (emits `Access-Control-Allow-Credentials: true`).*'
      x-cors-credentials?: true
      responses:
        default:
          description: ''
components:
  schemas:
    SessionStatusResponse:
      type: object
      properties:
        valid:
          type: boolean
        user-id:
          type: string
        org-id:
          type: string
        scopes:
          type: array
          items:
            type: string
          uniqueItems: true
        needs-renewal:
          type: boolean
      additionalProperties: false
      required:
      - valid
      - user-id
      - org-id
      - scopes
      - needs-renewal
    SessionTokenExchangeResponse:
      type: object
      properties:
        access_token:
          type: string
        expires_in:
          type: integer
          format: int64
        token_type:
          type: string
          enum:
          - bearer
        scope:
          type: string
        needs_renewal:
          type: boolean
      additionalProperties: false
      required:
      - access_token
      - expires_in
      - token_type
  securitySchemes:
    iroh:
      type: apiKey
      in: header
      name: authorization
    AuthorizationHeader:
      type: apiKey
      in: header
      name: authorization
      description: 'Ex: Bearer \<token\>'
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          scopes:
            telemetry: collect application data for analytics
            integration: Manage your modules
            private-intel: Access Private Intelligence
            admin: Provide admin privileges
            cognitive: Cognitive Integration
            profile: Get your profile information
            inspect: Extract Observables and data from text
            asset: Access and modify your assets
            event: Read IROH Events
            feedback: Submit Customer Feedback
            sse: SSE Integration. Manage your Devices.
            registry: Manage registry entries
            users: Manage users of your organisation
            investigation: Perform threat analysis investigation
            invite: Invite users into your organization
            casebook: Access and modify your casebooks
            orbital: Orbital Integration.
            enrich: Query your configured modules for threat intelligence
            oauth: Manage OAuth2 Clients
            vault: Grants access to Module Vaults
            response: List and execute response actions using configured modules
            notification: Receive notifications from integrations
            global-intel:read: Access AMP Global Intelligence
            webhook: Manage your Webhooks
            ao: AO Integration.
          authorizationUrl: https://visibility.amp.cisco.com/iroh/oauth2/authorize
          tokenUrl: https://visibility.amp.cisco.com/iroh/oauth2/token