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

# List your agent's tool calls this month

> Lists the caller's agent's calls this month, in the caller's timezone, to each tool provider Aether pays for on its behalf, every provider listed.

Use this tool when you need to:
- See how many web searches, page reads or browser sessions the agent used this month, and what they cost
- Check whether the agent's tool calls are paid from the caller's balance now

Examples:
- GET /agent/tool-usage

Hints:
- Takes no parameters and is not paged: items holds one entry per provider (firecrawl, browserbase).
- calls is the calls the provider answered; amount_microdollars their cost at its list price, whoever pays it; charged_microdollars what of it was paid from the caller's balance; charged whether the provider's calls are paid from the balance now and held to the daily cap.
- Use getAgent instead for the agent's spend on model calls today and this month.
- Any signed-in user, for their own agent; 404 agent_not_found until they have one. An agent host's grant is refused with 403 agent_host_route_not_allowed.



## OpenAPI

````yaml api-reference/openapi.json GET /agent/tool-usage
openapi: 3.1.0
info:
  title: Aether API
  version: 0.1.0
servers:
  - url: https://api.runaether.dev
security:
  - bearerAuth: []
paths:
  /agent/tool-usage:
    get:
      tags:
        - agent
      summary: List your agent's tool calls this month
      description: >-
        Lists the caller's agent's calls this month, in the caller's timezone,
        to each tool provider Aether pays for on its behalf, every provider
        listed.


        Use this tool when you need to:

        - See how many web searches, page reads or browser sessions the agent
        used this month, and what they cost

        - Check whether the agent's tool calls are paid from the caller's
        balance now


        Examples:

        - GET /agent/tool-usage


        Hints:

        - Takes no parameters and is not paged: items holds one entry per
        provider (firecrawl, browserbase).

        - calls is the calls the provider answered; amount_microdollars their
        cost at its list price, whoever pays it; charged_microdollars what of it
        was paid from the caller's balance; charged whether the provider's calls
        are paid from the balance now and held to the daily cap.

        - Use getAgent instead for the agent's spend on model calls today and
        this month.

        - Any signed-in user, for their own agent; 404 agent_not_found until
        they have one. An agent host's grant is refused with 403
        agent_host_route_not_allowed.
      operationId: listAgentToolUsage
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAgentToolUsage'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrgAuthorizationErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentErrorResponse'
          description: Internal Server Error
components:
  schemas:
    ListAgentToolUsage:
      additionalProperties: false
      properties:
        items:
          items:
            $ref: '#/components/schemas/AgentToolUsage'
          type: array
      required:
        - items
      type: object
    AgentErrorResponse:
      additionalProperties: false
      properties:
        code:
          enum:
            - account_deleting
            - aether_inference_unavailable
            - aether_inference_unserved
            - agent_connector_not_found
            - agent_credential_unreadable
            - agent_default_project_archived
            - agent_event_not_found
            - agent_host_account_deleting
            - agent_host_command_not_found
            - agent_host_creation_disabled
            - agent_host_exists
            - agent_host_illegal_transition
            - agent_host_not_allowlisted
            - agent_host_not_found
            - agent_host_not_ready
            - agent_host_other_provider_app
            - agent_host_project_not_eligible
            - agent_host_provisioning_failed
            - agent_host_state_changed
            - agent_host_wake_failed
            - agent_line_unavailable
            - agent_link_code_picked_up
            - agent_link_expired
            - agent_link_invalid_code
            - agent_link_needs_web_session
            - agent_link_no_verified_phone
            - agent_link_not_found
            - agent_link_other_account
            - agent_link_takes_a_code
            - agent_link_takes_no_code
            - agent_link_used
            - agent_memory_edit_not_found
            - agent_memory_not_reported
            - agent_message_not_found
            - agent_message_pending
            - agent_not_found
            - agent_profile_changed
            - agent_profile_harness_fixed
            - bad_gateway
            - bad_request
            - conflict
            - connection_account_held
            - connection_agent_only
            - connection_harness_mismatch
            - connection_is_default
            - connection_kind_not_runnable
            - connection_name_taken
            - connection_not_found
            - connection_not_held
            - connection_not_of_agent_family
            - connection_option_mismatch
            - connection_runs_agent
            - connection_runs_profiles
            - control_forbidden
            - creator_github_access_missing
            - default_skill_required
            - device_auth_not_found
            - fallback_is_own_connection
            - fallback_required_with_pin
            - fallback_requires_pin
            - forbidden
            - gateway_timeout
            - github_auth_check_unavailable
            - github_claim_unverified
            - github_identity_mismatch
            - github_reconnect_required
            - github_ref_not_found
            - gone
            - integration_auth_unexpected
            - integration_not_in_directory
            - integration_shape_changed
            - internal_error
            - line_exists
            - line_not_found
            - line_not_imessage
            - mcp_connection_github_not_connected
            - mcp_connection_oauth_not_accepted
            - mcp_connection_org_not_offered
            - mcp_connection_secret_invalid
            - mcp_connection_server_changed
            - mcp_connection_static_secret_not_accepted
            - mcp_credential_policy_not_applicable
            - mcp_credential_policy_org_unavailable
            - mcp_credential_policy_required
            - mcp_oauth_app_auth_method_unsupported
            - mcp_oauth_app_invalid
            - mcp_oauth_app_issuer_invalid
            - mcp_oauth_app_required
            - mcp_oauth_not_advertised
            - mcp_oauth_pkce_unsupported
            - mcp_oauth_registration_failed
            - mcp_repo_config_invalid
            - mcp_server_address_refused
            - mcp_server_aether_managed
            - mcp_server_api_key_not_applicable
            - mcp_server_args_invalid
            - mcp_server_auth_discovery_failed
            - mcp_server_auth_unsupported
            - mcp_server_directory_managed
            - mcp_server_directory_moved
            - mcp_server_display_name_invalid
            - mcp_server_env_invalid
            - mcp_server_headers_invalid
            - mcp_server_key_invalid
            - mcp_server_key_reserved
            - mcp_server_key_taken
            - mcp_server_kind_change_refused
            - mcp_server_not_from_directory
            - mcp_server_not_mcp
            - mcp_server_package_invalid
            - mcp_server_plugin_bundled
            - mcp_server_plugin_off
            - mcp_server_response_too_large
            - mcp_server_return_to_invalid
            - mcp_server_runtime_invalid
            - mcp_server_switched_off
            - mcp_server_unreachable
            - mcp_server_url_invalid
            - mcp_server_version_unpinned
            - method_not_allowed
            - model_not_on_aether_inference
            - no_default_connection
            - no_dispatch_target
            - not_acceptable
            - not_an_agent_host
            - not_found
            - not_implemented
            - org_role_insufficient
            - org_suspended
            - payment_required
            - plugin_moved
            - plugin_name_taken
            - plugin_request_invalid
            - plugin_server_key_reserved
            - plugin_server_key_taken
            - plugin_server_probe_failed
            - plugin_server_required
            - plugin_skill_invalid
            - plugin_source_address_refused
            - plugin_source_empty
            - plugin_source_invalid
            - plugin_source_not_found
            - plugin_source_not_public
            - plugin_source_too_large
            - plugin_source_unreachable
            - plugin_source_unsupported
            - plugin_switched_off
            - plugin_undeliverable
            - precondition_failed
            - project_archived
            - project_has_no_repository
            - project_repo_disconnected
            - project_repository_differs
            - push_file_too_large
            - push_rejected
            - push_secret_detected
            - rate_limited
            - repository_administration_not_granted
            - repository_already_connected
            - repository_create_forbidden
            - repository_create_rejected
            - repository_created_not_linked
            - repository_not_reachable
            - repository_owner_not_caller
            - request_canceled
            - request_timeout
            - request_too_large
            - save_in_progress
            - save_requires_task_creator
            - service_unavailable
            - skill_slug_reserved
            - task_already_saved
            - task_bound_at_creation
            - task_branch_diverged
            - task_branch_is_default
            - task_branch_mismatch
            - task_branch_missing
            - task_creator_deleted
            - task_executing
            - task_file_too_large
            - task_has_no_commits
            - task_has_no_files
            - task_history_has_merges
            - task_is_child
            - task_not_started
            - task_rebase_in_progress
            - unauthenticated
            - unsupported_media_type
            - validation_failed
            - whatsapp_not_enabled
            - working_tree_dirty
            - workspace_gone
            - workspace_outdated
          minLength: 1
          type: string
        error:
          minLength: 1
          type: string
        errors:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
      required:
        - error
        - code
      type: object
    OrgAuthorizationErrorResponse:
      additionalProperties: false
      properties:
        code:
          enum:
            - org_membership_required
            - org_role_insufficient
            - org_suspended
            - account_deleting
            - agent_host_route_not_allowed
            - credential_kind_not_admitted
          type: string
        error:
          minLength: 1
          type: string
      required:
        - error
        - code
      type: object
    AgentToolUsage:
      additionalProperties: false
      properties:
        amount_microdollars:
          description: >-
            Their cost at the provider's list price, in millionths of a US
            dollar, whoever pays it.
          format: int64
          type: integer
        calls:
          description: The calls the provider answered.
          format: int64
          type: integer
        charged:
          description: >-
            Whether your agent's calls to the provider are paid from your
            balance now, at its list price, and held to your agent's daily spend
            cap, whatever your agent thinks on. Off, Aether pays for them.
          type: boolean
        charged_microdollars:
          description: >-
            What of it was paid from your balance, in millionths of a US dollar;
            the rest Aether paid.
          format: int64
          type: integer
        provider:
          description: >-
            The provider: firecrawl, which your agent's web search and page
            reading run on; browserbase, whose cloud sessions your agent's
            browser tools run on, one call a session.
          enum:
            - firecrawl
            - browserbase
          type: string
      required:
        - provider
        - calls
        - amount_microdollars
        - charged_microdollars
        - charged
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````

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