> ## Documentation Index
> Fetch the complete documentation index at: https://docs.open.cx/llms.txt
> Use this file to discover all available pages before exploring further.

> List the IP addresses opening sessions, ranked by volume, with distinct contacts per address. Use when deciding which addresses to block instead of guessing.

# List IP addresses seen in recent sessions



## OpenAPI

````yaml get /blocklist/ips/session-activity
openapi: 3.1.0
info:
  title: OpenCX API
  description: >

    OpenCX is an AI-powered, all-in-one platform for customer support and
    outbound communications.


    Use this API to manage your OpenCX organization's AI agents, actions,
    conversations, contacts, and more.


    To get started, generate a new API key from the dashboard.


    ## Authentication

    All API endpoints require authentication using a Bearer token. You can
    generate an API key from your OpenCX dashboard.


    ## Rate Limiting

    API requests are rate limited to ensure fair usage. The current limits are:

    - 100 requests per minute for standard endpoints

    - 1000 requests per minute for streaming endpoints


    ## Error Handling

    The API uses standard HTTP status codes and returns detailed error messages
    in the response body.
  version: 1.0-beta
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://api.open.cx
    description: Production
security:
  - bearerAuth: []
paths:
  /blocklist/ips/session-activity:
    get:
      summary: List IP addresses seen in recent sessions
      description: >-
        Which IP addresses have been opening sessions, ranked by volume, with
        the number of distinct contacts seen from each. A high contact count
        against a single address is the signature of one visitor minting a
        throwaway contact per message. Use this to decide what to block instead
        of guessing at addresses. Covers widget channels only — other channels
        carry no client IP.
      operationId: listSessionIpActivity
      parameters:
        - schema:
            default: 30
            type: integer
            minimum: 1
            maximum: 90
          in: query
          name: days
          required: false
          description: 'How far back to look (default: 30, max: 90)'
        - schema:
            default: 1
            type: integer
            minimum: 1
            maximum: 9007199254740991
          in: query
          name: page
          required: false
          description: 'Page (default: 1)'
        - schema:
            default: 50
            type: integer
            minimum: 1
            maximum: 200
          in: query
          name: limit
          required: false
          description: 'Results per page (default: 50, max: 200)'
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionIpActivityOutput'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
components:
  schemas:
    SessionIpActivityOutput:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/SessionIpActivityOutput'
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              ip:
                type: string
              session_count:
                type: number
              contact_count:
                type: number
              first_seen:
                type: string
                format: date-time
              last_seen:
                type: string
                format: date-time
              is_blocked:
                type: boolean
            required:
              - ip
              - session_count
              - contact_count
              - first_seen
              - last_seen
              - is_blocked
            additionalProperties: false
        page:
          type: number
        has_more:
          type: boolean
      required:
        - data
        - page
        - has_more
      additionalProperties: false
    ErrorDto:
      type: object
      properties:
        statusCode:
          type: integer
        message:
          type: string
        error:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````