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

# Portfolio rollup

> Portfolio rollup (bearer-authed)



## OpenAPI

````yaml /api-reference/public-openapi.json get /api/public/v1/portfolio
openapi: 3.1.0
info:
  title: FixAEO Customer API
  version: 2026.05.23
  description: >-
    Bearer-authed read API over your FixAEO workspace. Create a key in Settings,
    then send it as `Authorization: Bearer <key>`. Every route is scoped to the
    key's own account.


    Generated from the server's OpenAPI spec — see
    scripts/build-public-openapi.py.
servers:
  - url: https://api.fixaeo.com
security:
  - bearerAuth: []
paths:
  /api/public/v1/portfolio:
    get:
      tags:
        - Public API
      summary: Portfolio rollup
      description: Portfolio rollup (bearer-authed)
      parameters:
        - $ref: '#/components/parameters/RangeQuery'
        - name: region
          in: query
          schema:
            type: string
            default: us
        - name: language
          in: query
          schema:
            type: string
            default: en
      responses:
        '200':
          description: Portfolio data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Portfolio'
      security:
        - bearerAuth: []
components:
  parameters:
    RangeQuery:
      name: range
      in: query
      schema:
        type: string
        enum:
          - 7d
          - 30d
          - 90d
        default: 30d
      description: Time window for time-series + aggregations.
  schemas:
    Portfolio:
      type: object
      properties:
        brands:
          type: array
          items:
            type: object
            properties:
              slug:
                type: string
              name:
                type: string
              ai_presence_score:
                type: integer
              delta_7d:
                type: number
              top_engine:
                type: string
              top_competitor:
                type: string
        range:
          type: string
        region:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: fxa_
      description: |
        API keys generated via `POST /api/v1/me/api-keys`. Format:
        `Authorization: Bearer fxa_<32-char-secret>`. Only accepted on
        `/api/public/v1/*`. Cookie auth is rejected on that surface.

````