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

# List consumers of a Published BASE network (publisher-only)

> For publishers only: lists the organizations currently using one of your published base networks — those that have built slices of it for their own drivers. By default consumers appear as anonymous IDs; you only see full organization details when a consumer has chosen to share them. Useful for understanding who depends on your network before you withdraw it from publication.



## OpenAPI

````yaml /openapi/emsp-network/openapi.yaml get /emsp/v1/networks/{network_id}/consumers
openapi: 3.0.0
info:
  title: Spirii EMSP - Network & Access Control API
  description: >-
    Manages network access and location visibility for secure multi-tenant
    operation.
  version: v1
  contact: {}
servers:
  - url: https://api.spirii.com
    description: Production
security:
  - OAuth2ClientCredentials: []
tags:
  - name: Networks
    description: Network lifecycle management
paths:
  /emsp/v1/networks/{network_id}/consumers:
    get:
      tags:
        - Networks
      summary: List consumers of a Published BASE network (publisher-only)
      description: >-
        For publishers only: lists the organizations currently using one of your
        published base networks — those that have built slices of it for their
        own drivers. By default consumers appear as anonymous IDs; you only see
        full organization details when a consumer has chosen to share them.
        Useful for understanding who depends on your network before you withdraw
        it from publication.
      operationId: NetworkController_listConsumers_v1
      parameters:
        - name: Idempotency-Key
          in: header
          description: >-
            Client-generated unique key per operation intent (UUID). Same key +
            identical body replays the original response; same key + different
            body returns 409.
          required: true
          schema:
            type: string
            format: uuid
        - name: network_id
          required: true
          in: path
          description: The unique ID of the published base network to list consumers for.
          schema:
            type: string
            format: uuid
        - name: after
          required: false
          in: query
          description: >-
            Cursor to start fetching records after — the `pagination.end_cursor`
            of a previous response. Omit it to fetch the first page, and stop
            paging once `pagination.has_next` is false. Sending it empty is a
            400: an empty cursor is a broken cursor, not a request for the first
            page.
          schema:
            minLength: 1
            type: string
        - name: cursor
          required: false
          in: query
          deprecated: true
          description: 'Deprecated: use `after`.'
          schema:
            minLength: 1
            type: string
        - name: limit
          required: false
          in: query
          description: Results per page (1–200)
          schema:
            default: 50
            type: number
      responses:
        '200':
          description: >-
            Paginated list of consumer tenants attached to the published base
            network.
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/PaginatedEnvelope'
                  - type: object
                    required:
                      - data
                    properties:
                      data:
                        type: array
                        items:
                          $ref: '#/components/schemas/PublishedNetworkConsumer'
components:
  schemas:
    PaginatedEnvelope:
      type: object
      properties:
        pagination:
          description: Pagination state for this page.
          allOf:
            - $ref: '#/components/schemas/PaginationMetaResponse'
        next_cursor:
          type: string
          nullable: true
          example: null
          deprecated: true
          description: 'Deprecated: use `pagination.end_cursor`.'
        has_next:
          type: boolean
          example: false
          deprecated: true
          description: 'Deprecated: use `pagination.has_next`.'
      required:
        - pagination
        - next_cursor
        - has_next
    PublishedNetworkConsumer:
      type: object
      properties:
        consumer_id:
          type: string
          description: Consumer identifier.
        consumer_tenant_id:
          type: string
          format: uuid
          nullable: true
          description: Consumer tenant identifier; null when tenant details are not shared.
        sub_network_count:
          type: number
          description: >-
            Number of SUB networks the consumer has attached to this BASE
            network.
        first_attached_at:
          type: string
          format: date-time
          description: When the consumer first attached (UTC).
        last_session_at:
          type: string
          format: date-time
          nullable: true
          description: Most recent session on the network (UTC); null if none.
      required:
        - consumer_id
        - consumer_tenant_id
        - sub_network_count
        - first_attached_at
        - last_session_at
    PaginationMetaResponse:
      type: object
      properties:
        end_cursor:
          type: string
          nullable: true
          example: null
          description: >-
            Cursor for the end of the current page. Pass it back as `after` to
            fetch the next page; null on the last page.
        has_next:
          type: boolean
          example: false
          description: Whether there are more records to fetch.
      required:
        - end_cursor
        - has_next
  securitySchemes:
    OAuth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: /oauth/token
          scopes:
            emsp:networks:read: View network and access control configuration
            emsp:networks:write: Create/update/delete SUB networks, manage access rules
            emsp:networks:publish: Publish/drain networks (PATCH /networks/:id/publish-state)

````