---
title: "Get 2-axis intersection cube for an entity × metric × fiscal_year"
method: GET
path: "/api/v1/entities/{entity_id}/financials/intersections"
tags: ["Financials"]
---

# Get 2-axis intersection cube for an entity × metric × fiscal_year

`GET /api/v1/entities/{entity_id}/financials/intersections`

## Request

- Base URL: `https://api.hub-equity.com`
- URL: `https://api.hub-equity.com/api/v1/entities/{entity_id}/financials/intersections`
- Auth: HTTP bearer

Returns a pivot of values at the crossroads of two XBRL axes (e.g. Geography × Segment). Complements `/financials/breakdown`, which returns single-axis members only. Picks the largest available pair automatically, or accepts explicit row_axis_qname / col_axis_qname. Requires the `facts.premium` scope (401 anonymous, 403 Free key).

## Path parameters

- `entity_id` string, required

## Query parameters

- `metric` string: Hub concept code
- `fiscal_year` integer, required: Fiscal year
- `row_axis_qname` string, nullable: Optional explicit row axis qname
- `col_axis_qname` string, nullable: Optional explicit col axis qname

## Response `200`

Successful Response

- ApiResponseIntersectionCube
  - `success` boolean, required
  - `data` IntersectionCube: A 2-axis pivot for an entity × metric × fiscal_year. Exposes intersections that ``get_breakdown`` deliberately filters out (``len(dims) != 1``), so analysts can see Geography × Segment slices that single-axis lanes can't show. The first detected axis pair with enough cells (≥4) is returned by default; a specific pair can be requested via the ``axes`` query param.
    - `entity_id` string, required
    - `metric` string, required
    - `fiscal_year` integer, required
    - `row_axis_qname` string, required
    - `row_axis_label` string, required
    - `row_axis_kind` string, required
    - `col_axis_qname` string, required
    - `col_axis_label` string, required
    - `col_axis_kind` string, required
    - `row_members` string[], required
    - `col_members` string[], required
    - `cells` IntersectionCell[], required
      - `row_qname` string, required
      - `row_label` string, required
      - `col_qname` string, required
      - `col_label` string, required
      - `value` number, nullable, required
      - `currency` string, nullable, required
    - `available_pairs` array[], required
      - unknown[]
        - unknown
    - `currency` string, nullable, required
  - `error` ApiError: API error details.
    - `code` string, required
    - `message` string, required
    - `details` object, nullable
  - `meta` ApiMeta: API response metadata. Pagination fields (``page`` / ``per_page`` / ``total``) are populated on collection endpoints only. They are omitted from the payload on single-resource endpoints.
    - `timestamp` string, date-time
    - `request_id` string, nullable
    - `page` integer, nullable
    - `per_page` integer, nullable
    - `total` integer, nullable
  - `links` ApiLinks: HATEOAS-style pagination cursors. Host-relative path + query links for a collection page. Present on collection endpoints, ``null`` fields where a page doesn't exist (``next`` on the last page, ``prev`` on the first). The whole ``links`` object is omitted from single-resource responses (see ``ApiResponse`` serializer).
    - `self` string, nullable
    - `first` string, nullable
    - `prev` string, nullable
    - `next` string, nullable
    - `last` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/hub-equity/apis/hub-equity-api.md) · [All operations](https://skmtc.dev/hub-equity/apis/hub-equity-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hub-equity/apis/hub-equity-api/revisions/e8eeda5dc13e?raw)
