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

# Get subsequence analytics

> **Get per-branch analytics for a campaign**

Returns enrollment, conversion and per-step email metrics for every subsequence
branch on a campaign. A campaign with no branches returns empty lists and a
zero summary rather than an error.

## What comes back

Per branch (`subsequences[]`):
- `entry_node_id` -- the branch's SUBSEQUENCE entry node. This is the value
`POST /campaigns/{id}/leads/move-to-subsequence` expects as
`target_subsequence_node_id`.
- `label`, `trigger_type`, `trigger_params` -- how the branch is entered.
- `metrics.enrollments_total` / `_active` / `_completed` -- leads ever enrolled,
currently in the branch, and finished with it.
- `metrics.conversion_rate` -- replied / enrolled.
- `metrics.steps[]` -- per-step `sent`, `opened`, `replied`, `bounced` keyed by
`node_id`.

Plus a `summary` rolled up across all branches.

## Example

```python
import requests

campaign_id = "550e8400-e29b-41d4-a716-446655440000"

response = requests.get(
    f"https://api.coldsend.pro/api/public/v1/analytics/campaigns/{campaign_id}/subsequences",
    headers={"X-API-Key": "your-api-key"}
)
print(response.json())
```



## OpenAPI

````yaml /public_openapi.json get /api/public/v1/analytics/campaigns/{campaign_id}/subsequences
openapi: 3.0.3
info:
  title: ColdSend Public API
  description: >-
    Programmatic access to ColdSend for managing cold email campaigns and sender
    accounts.
  version: 1.0.0
  contact:
    name: ColdSend Support
    email: support@coldsend.pro
    url: https://coldsend.pro
servers:
  - url: https://api.coldsend.pro
    description: Production
security:
  - ApiKeyAuth: []
paths:
  /api/public/v1/analytics/campaigns/{campaign_id}/subsequences:
    get:
      tags:
        - Analytics
      summary: Get subsequence analytics
      description: >-
        **Get per-branch analytics for a campaign**


        Returns enrollment, conversion and per-step email metrics for every
        subsequence

        branch on a campaign. A campaign with no branches returns empty lists
        and a

        zero summary rather than an error.


        ## What comes back


        Per branch (`subsequences[]`):

        - `entry_node_id` -- the branch's SUBSEQUENCE entry node. This is the
        value

        `POST /campaigns/{id}/leads/move-to-subsequence` expects as

        `target_subsequence_node_id`.

        - `label`, `trigger_type`, `trigger_params` -- how the branch is
        entered.

        - `metrics.enrollments_total` / `_active` / `_completed` -- leads ever
        enrolled,

        currently in the branch, and finished with it.

        - `metrics.conversion_rate` -- replied / enrolled.

        - `metrics.steps[]` -- per-step `sent`, `opened`, `replied`, `bounced`
        keyed by

        `node_id`.


        Plus a `summary` rolled up across all branches.


        ## Example


        ```python

        import requests


        campaign_id = "550e8400-e29b-41d4-a716-446655440000"


        response = requests.get(
            f"https://api.coldsend.pro/api/public/v1/analytics/campaigns/{campaign_id}/subsequences",
            headers={"X-API-Key": "your-api-key"}
        )

        print(response.json())

        ```
      operationId: >-
        get_subsequence_analytics_api_public_v1_analytics_campaigns__campaign_id__subsequences_get
      parameters:
        - name: campaign_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Campaign Id
      responses:
        '200':
          description: Subsequence analytics retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubsequenceAnalyticsResponse'
        '400':
          description: Analytics service rejected the request
        '401':
          description: Missing or invalid API key
        '403':
          description: Insufficient permissions - requires 'campaigns:read' scope
        '404':
          description: Campaign not found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    SubsequenceAnalyticsResponse:
      properties:
        subsequences:
          items:
            $ref: '#/components/schemas/SubsequenceAnalyticsItem'
          type: array
          title: Subsequences
        summary:
          $ref: '#/components/schemas/SubsequenceAnalyticsSummary'
      type: object
      required:
        - subsequences
        - summary
      title: SubsequenceAnalyticsResponse
      description: Response for GET /campaigns/{id}/analytics/subsequences.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    SubsequenceAnalyticsItem:
      properties:
        entry_node_id:
          type: string
          format: uuid
          title: Entry Node Id
        label:
          type: string
          nullable: true
          title: Label
        trigger_type:
          type: string
          nullable: true
          title: Trigger Type
        trigger_params:
          additionalProperties: true
          type: object
          nullable: true
          title: Trigger Params
        metrics:
          $ref: '#/components/schemas/SubsequenceMetrics'
      type: object
      required:
        - entry_node_id
        - metrics
      title: SubsequenceAnalyticsItem
      description: Analytics for one subsequence.
    SubsequenceAnalyticsSummary:
      properties:
        total_enrollments:
          type: integer
          title: Total Enrollments
        total_active:
          type: integer
          title: Total Active
        overall_conversion_rate:
          type: number
          title: Overall Conversion Rate
      type: object
      required:
        - total_enrollments
        - total_active
        - overall_conversion_rate
      title: SubsequenceAnalyticsSummary
      description: Top-level summary across all subsequences.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    SubsequenceMetrics:
      properties:
        enrollments_total:
          type: integer
          title: Enrollments Total
        enrollments_active:
          type: integer
          title: Enrollments Active
        enrollments_completed:
          type: integer
          title: Enrollments Completed
        conversion_rate:
          type: number
          title: Conversion Rate
        steps:
          items:
            $ref: '#/components/schemas/SubsequenceStepMetrics'
          type: array
          title: Steps
      type: object
      required:
        - enrollments_total
        - enrollments_active
        - enrollments_completed
        - conversion_rate
        - steps
      title: SubsequenceMetrics
      description: Aggregate metrics for a single subsequence.
    SubsequenceStepMetrics:
      properties:
        node_id:
          type: string
          format: uuid
          title: Node Id
        label:
          type: string
          nullable: true
          title: Label
        sent:
          type: integer
          title: Sent
        opened:
          type: integer
          title: Opened
        replied:
          type: integer
          title: Replied
        bounced:
          type: integer
          title: Bounced
      type: object
      required:
        - node_id
        - sent
        - opened
        - replied
        - bounced
      title: SubsequenceStepMetrics
      description: Per-step (per flow node) metrics within a subsequence.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key with format cs_live_xxx

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.