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

# Who am I

> Who this key acts as, the workspace, setup state, and the usage budget left this period.

Who this key acts as, the workspace, whether it is set up, and the ops and credits left this period. Call it first.

`usage` is `null` when usage could not be read. The identity part still answers.


## OpenAPI

````yaml GET /v2/workspace/whoami
openapi: 3.1.0
info:
  title: OpenNous REST API
  version: 2.0.0
  description: >-
    Read and write the OpenNous revenue context graph over HTTP. Authenticate
    with a workspace API key.
servers:
  - url: https://api.opennous.cloud
    description: OpenNous Cloud
security:
  - bearerAuth: []
  - apiKeyHeader: []
tags:
  - name: People
  - name: Accounts
  - name: Deals
  - name: Notes
  - name: Attention
  - name: Insights
  - name: Enrich & score
  - name: Organization
  - name: Workflows
  - name: Webhooks
    description: >-
      Subscribe to events and have them pushed to your own stack, with the
      account record attached.
  - name: Usage
paths:
  /v2/workspace/whoami:
    get:
      tags:
        - Organization
      summary: Who am I
      description: >-
        Who this key acts as, the workspace, setup state, and the usage budget
        left this period.
      operationId: whoami
      responses:
        '200':
          description: The acting identity.
          content:
            application/json:
              schema:
                type: object
                properties:
                  workspace:
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                      name:
                        type:
                          - string
                          - 'null'
                  you:
                    type: object
                    properties:
                      user_id:
                        type:
                          - string
                          - 'null'
                      name:
                        type:
                          - string
                          - 'null'
                      email:
                        type:
                          - string
                          - 'null'
                      scope:
                        type: string
                        enum:
                          - admin
                          - member
                      roles:
                        type: array
                        items:
                          type: string
                      capability:
                        type: string
                        enum:
                          - read_write
                          - read_only
                  setup:
                    type: object
                    properties:
                      onboarded:
                        type: boolean
                      accounts:
                        type: integer
                      has_icp:
                        type: boolean
                  usage:
                    type:
                      - object
                      - 'null'
                    description: Null when usage could not be read.
                    properties:
                      plan:
                        type: string
                      period_start:
                        type: string
                      period_end:
                        type: string
                      ops_used:
                        type: integer
                      ops_limit:
                        type:
                          - integer
                          - 'null'
                      ops_left:
                        type:
                          - integer
                          - 'null'
                      credits_left:
                        type:
                          - number
                          - 'null'
                        description: Null when credits are unlimited.
              example:
                workspace:
                  id: 1f0e2d3c-4b5a-4968-8776-5a4b3c2d1e0f
                  name: Acme GTM
                you:
                  user_id: u1
                  name: Jordan Lee
                  email: jordan@yourco.com
                  scope: member
                  roles:
                    - account_executive
                  capability: read_write
                setup:
                  onboarded: true
                  accounts: 412
                  has_icp: true
                usage:
                  plan: growth
                  period_start: '2026-09-01T00:00:00Z'
                  period_end: '2026-10-01T00:00:00Z'
                  ops_used: 1840
                  ops_limit: 10000
                  ops_left: 8160
                  credits_left: 312
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/UpgradeRequired'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  responses:
    Unauthorized:
      description: Missing, unknown, or expired API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            missing:
              summary: api_key_required
              value:
                error: api_key_required
            invalid:
              summary: invalid_api_key
              value:
                error: invalid_api_key
            expired:
              summary: api_key_expired
              value:
                error: api_key_expired
                detail: >-
                  This API key has expired. Create or rotate a key to get a
                  fresh one.
    UpgradeRequired:
      description: The workspace is past its monthly operations limit and grace window.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: upgrade_required
            reason: ops_limit_reached
            current_plan: starter
            upgrade_url: /settings?section=billing
    RateLimited:
      description: More than 600 requests in a minute on this key.
      headers:
        RateLimit-Limit:
          schema:
            type: integer
          description: Requests allowed per window.
        RateLimit-Remaining:
          schema:
            type: integer
          description: Requests left in the window.
        RateLimit-Reset:
          schema:
            type: integer
          description: Seconds until the window resets.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: rate_limited
    InternalError:
      description: Unexpected server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: internal_error
  schemas:
    Error:
      type: object
      description: >-
        Every error response. `error` is a stable machine code. Some errors add
        fields such as `detail`, `supported`, `max`, or `reason`.
      required:
        - error
      properties:
        error:
          type: string
          description: Machine-readable error code.
        detail:
          type: string
          description: Human-readable explanation, when there is one.
      additionalProperties: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Workspace API key. Create one in **Settings → API keys**.
    apiKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
      description: The same key, sent as a header.

````

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