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

# Get ownership/role graph for a company

> Returns a progressive ORB (Ownership, Roles, Beneficial owners) graph centred on the company. Optional flags toggle beneficial-owner edges and visual risk highlighting. Node and role-expansion limits protect against explosively large graphs.

<Badge color="purple" size="sm">Max+ tier</Badge>


## OpenAPI

````yaml get /companies/{id}/graph
openapi: 3.1.1
info:
  title: TIC Lens API
  description: "The TIC Lens API provides programmatic access to company, person, property, vehicle, and order data.\r\n\r\n## Authentication\r\n\r\nAll requests require an API key passed via the `x-api-key` header:\r\n\r\n```bash\r\ncurl -H \"x-api-key: YOUR_API_KEY\" https://lens-api.tic.io/companies/123\r\n```\r\n\r\nAPI keys are managed through the TIC Lens web application under **Settings → API Keys**.\r\n\r\n## Base URL\r\n\r\n| Environment | URL |\r\n|-------------|-----|\r\n| Production  | `https://lens-api.tic.io` |\r\n\r\n## Feature Access\r\n\r\nEndpoints are gated by your subscription plan. If your plan does not include a feature, the endpoint will return `403 Forbidden`.\r\n\r\n## Rate Limits\r\n\r\nRate limits are applied per API key. If you exceed the limit, requests will return `429 Too Many Requests`.\r\n\r\n## Response Format\r\n\r\nAll responses are JSON. Null values are omitted from responses.\r\n"
  version: v1
servers:
  - url: https://lens-api.tic.io
security:
  - ApiKey: []
tags:
  - name: Addresses
  - name: Bolagsverket
  - name: Brf
  - name: Companies
  - name: Documents
  - name: FlightImages
  - name: Free
  - name: Orders
  - name: OrdersExports
  - name: PaymentControl
  - name: PaymentControlImport
  - name: Persons
  - name: Properties
  - name: PublicSearch
  - name: SearchAutocomplete
  - name: Sentinel
  - name: ServingPermits
  - name: Team
  - name: Teams
  - name: Transportstyrelsen
  - name: Vehicles
  - name: WatchList
paths:
  /companies/{id}/graph:
    get:
      tags:
        - Companies
      summary: Get ownership/role graph for a company
      description: >-
        Returns a progressive ORB (Ownership, Roles, Beneficial owners) graph
        centred on the company. Optional flags toggle beneficial-owner edges and
        visual risk highlighting. Node and role-expansion limits protect against
        explosively large graphs.
      operationId: GetCompanyGraph
      parameters:
        - name: id
          in: path
          description: Internal company ID
          required: true
          schema:
            type: integer
            format: int32
        - name: includeBeneficialOwner
          in: query
          description: Include beneficial-owner edges
          schema:
            type: boolean
            default: true
        - name: highlightDebtBalance
          in: query
          description: Highlight nodes with outstanding KFM debt balances
          schema:
            type: boolean
            default: true
        - name: highlightRecordOfNonPayment
          in: query
          description: Highlight nodes with KFM records of non-payment
          schema:
            type: boolean
            default: true
        - name: limitMaxRoleInCompanies
          in: query
          description: Maximum number of companies to expand per role. Default 300.
          schema:
            type: integer
            format: int32
            default: 300
        - name: maxTotalNodes
          in: query
          description: Maximum total nodes in the returned graph. Default 10 000.
          schema:
            type: integer
            format: int32
            default: 10000
      responses:
        '200':
          description: ORB graph
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_ORBGraph'
        '404':
          description: Company not found or not accessible
components:
  schemas:
    Ormeo_Library_Memgraph_ORB_ORBGraph:
      type: object
      properties:
        edges:
          type:
            - 'null'
            - array
          items:
            $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_ORBEdge'
        nodes:
          type:
            - 'null'
            - array
          items:
            $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_ORBNode'
        isTruncated:
          type: boolean
        maxNodesLimit:
          type:
            - 'null'
            - integer
          format: int32
        truncatedAtStage:
          type:
            - 'null'
            - string
        networkRisk:
          $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_NetworkRisk'
        watchlists:
          type:
            - 'null'
            - array
          items:
            $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_GraphWatchlist'
      additionalProperties: false
    Ormeo_Library_Memgraph_ORB_ORBEdge:
      type: object
      properties:
        id:
          type:
            - 'null'
            - string
        start:
          type:
            - 'null'
            - string
        end:
          type:
            - 'null'
            - string
        label:
          type:
            - 'null'
            - string
        properties:
          type:
            - 'null'
            - object
          additionalProperties:
            type: 'null'
      additionalProperties: false
    Ormeo_Library_Memgraph_ORB_ORBNode:
      type: object
      properties:
        id:
          type:
            - 'null'
            - string
        label:
          type:
            - 'null'
            - string
        properties:
          type:
            - 'null'
            - object
          additionalProperties:
            type: 'null'
      additionalProperties: false
    Ormeo_Library_Memgraph_ORB_NetworkRisk:
      type: object
      properties:
        score:
          type: number
          format: double
        totalCompanies:
          type: integer
          format: int32
        highRiskCompanies:
          type: integer
          format: int32
        highRiskCompaniesPercent:
          type: number
          format: double
        totalPersons:
          type: integer
          format: int32
        highlightedPersons:
          type: integer
          format: int32
        highlightedPersonsPercent:
          type: number
          format: double
        details:
          type:
            - 'null'
            - array
          items:
            $ref: '#/components/schemas/Ormeo_Library_Memgraph_ORB_NetworkRiskDetail'
      additionalProperties: false
    Ormeo_Library_Memgraph_ORB_GraphWatchlist:
      type: object
      properties:
        watchlistGuid:
          type: string
          format: uuid
        watchlistName:
          type:
            - 'null'
            - string
      additionalProperties: false
    Ormeo_Library_Memgraph_ORB_NetworkRiskDetail:
      type: object
      properties:
        type:
          type:
            - 'null'
            - string
        id:
          type:
            - 'null'
            - string
        name:
          type:
            - 'null'
            - string
        intelligenceScoreTotal:
          type:
            - 'null'
            - number
          format: double
        highlight:
          type:
            - 'null'
            - boolean
      additionalProperties: false
  securitySchemes:
    ApiKey:
      type: apiKey
      name: x-api-key
      in: header

````