---
title: "Get My Spend Status"
method: GET
path: "/api/v1/spend-insights/my/status"
tags: ["Spend Insights"]
---

# Get My Spend Status

`GET /api/v1/spend-insights/my/status`

## Request

- Base URL: `https://example.conductor.one`
- URL: `https://example.conductor.one/api/v1/spend-insights/my/status`
- Auth: HTTP bearer and OAuth 2
  - Client credentials
  - Token URL: `/auth/v1/token`

Get the caller's budget limits and current usage. An optional denial ID
 includes that denial only when it is visible to the caller.

## Query parameters

- `app_id` string: Optional application used to include application-specific limits.
- `block_id` string: Optional denial episode to include when it is visible to the caller. app_id does not grant access to this episode.

## Response `200`

GetMySpendStatusResponse contains the caller's effective limits and optional denial.

- C1ApiSpendinsightsV1GetMySpendStatusResponse: GetMySpendStatusResponse contains the caller's effective limits and optional denial.
  - `block` C1ApiSpendinsightsV1MySpendBlock: MySpendBlock is a caller-visible denial projection. Organization and application episodes omit account amounts. Its field ledger was intentionally reset while the service is STABILITY_ALPHA.
    - `attemptCount` string, int64: Best-effort lower bound for refused calls in this episode. Concurrent retry exhaustion can under-report.
    - `attemptedAppId` string: Trusted app of the denied attempt after caller-scoped audience proof. This is only a selector and never grants access to the episode.
    - `audienceMessage` string: Authoritative user-facing explanation for this refusal.
    - `blockId` string: Unique identifier for this denial episode.
    - `closedAt` string, date-time, nullable
    - `firstDeniedAt` string, date-time, nullable
    - `lastDeniedAt` string, date-time, nullable
    - `money` C1ApiSpendinsightsV1DenialMoneySnapshot: DenialMoneySnapshot captures account amounts at the first refusal.
      - `consumedNano` string, int64: Spend already settled when the first refusal occurred.
      - `currencyCode` string: Currency used for monetary values.
      - `limitNano` string, int64: Effective limit that caused the refusal.
      - `requestedNano` string, int64: Spend requested by the refused call.
      - `reservedNano` string, int64: Spend reserved by in-progress calls when the first refusal occurred.
    - `periodEnd` string, date-time, nullable
    - `periodKey` string: Stable key for the denied budget period.
    - `personalRequestSizing` C1ApiSpendinsightsV1PersonalSpendRemedyRequestSizing: PersonalSpendRemedyRequestSizing is server-owned guidance for changing the caller's personal total after a refusal. It exposes one actionable total and never identifies the outer control that may cap or prevent the request.
      - `estimatedAdditional` C1ApiFundsV1Money: Money is a non-negative monetary value used by spending controls.
        - `currencyCode` string: ISO 4217 currency code.
        - `nanos` integer: Fractional nano-units, from zero through 999999999.
        - `units` string, int64: Whole currency units. The bound keeps nano-unit conversion within int64.
      - `minimumTotal` C1ApiFundsV1Money: Money is a non-negative monetary value used by spending controls.
        - `currencyCode` string: ISO 4217 currency code.
        - `nanos` integer: Fractional nano-units, from zero through 999999999.
        - `units` string, int64: Whole currency units. The bound keeps nano-unit conversion within int64.
      - `otherControlRequired` boolean: Whether another organization or application control must change before a personal request can help. No identity or amount for that control is disclosed.
      - `recommendationCapped` boolean: Whether recommended_total was reduced to the current organization ceiling.
      - `recommendedTotal` C1ApiFundsV1Money: Money is a non-negative monetary value used by spending controls.
        - `currencyCode` string: ISO 4217 currency code.
        - `nanos` integer: Fractional nano-units, from zero through 999999999.
        - `units` string, int64: Whole currency units. The bound keeps nano-unit conversion within int64.
    - `reason` 'SPEND_DENY_REASON_UNSPECIFIED' | 'SPEND_DENY_REASON_TENANT_FROZEN' | 'SPEND_DENY_REASON_SUSPENDED_BY_ADMIN' | 'SPEND_DENY_REASON_APP_SUSPENDED' | 'SPEND_DENY_REASON_APP_PAUSED_BY_YOU' | 'SPEND_DENY_REASON_NO_SUPPLY': Reason the calls were denied.
    - `requestTaskId` string: Current access request task linked to this episode, when one exists.
    - `scope` C1ApiFundsV1AccountScope: AccountScope identifies the tenant, user, application, or user-application account against which spending was admitted. This message contains a oneof named kind. Only a single field of the following list may be set at a time: - tenant - subject - app - subjectApp
      - `app` C1ApiFundsV1AppScope: AppScope identifies one application's account.
        - `appId` string: Application ID of the account.
      - `subject` C1ApiFundsV1SubjectScope: SubjectScope identifies one user's account.
        - `userId` string: User ID of the account owner.
      - `subjectApp` C1ApiFundsV1SubjectAppScope: SubjectAppScope identifies one user's account for an application.
        - `appId` string: Application ID of the account.
        - `userId` string: User ID of the account owner.
      - `tenant` C1ApiFundsV1TenantScope: TenantScope identifies the organization-wide account.
    - `state` 'SPEND_BLOCK_STATE_UNSPECIFIED' | 'SPEND_BLOCK_STATE_OPEN' | 'SPEND_BLOCK_STATE_CLOSED': Whether this denial episode remains open.
  - `currencyCode` string: Currency used for monetary values.
  - `scopes` C1ApiSpendinsightsV1MyEffectiveScope[], nullable: Ordered organization, user, application, and user-application scopes. Shared organization and application scopes contain no financial details.
    - `financials` C1ApiSpendinsightsV1MyEffectiveScopeFinancials: MyEffectiveScopeFinancials contains caller-owned budget amounts. It is present only for SUBJECT and SUBJECT_APP scopes that name the caller.
      - `accountInitialized` boolean: Whether this budget account has recorded activity.
      - `hasRemainingNano` boolean: Whether remaining_nano is available for this scope.
      - `lifetimeConsumedNano` string, int64: Spend settled over the lifetime of the budget account.
      - `limitNano` string, int64: Effective spend limit. Zero when tracking is true.
      - `remainingNano` string, int64: Spend headroom after settled and reserved spend.
      - `reservedNano` string, int64: Spend reserved by in-progress calls.
      - `tracking` boolean: Whether this scope records spend without enforcing a finite limit.
      - `windowCommittedNano` string, int64: Settled plus reserved spend in the current budget period.
      - `windowConsumedNano` string, int64: Spend settled in the current budget period.
    - `periodEnd` string, date-time, nullable
    - `periodKey` string: Stable key for the current budget period.
    - `periodKind` 'PERIOD_KIND_UNSPECIFIED' | 'PERIOD_KIND_DAILY' | 'PERIOD_KIND_WEEKLY' | 'PERIOD_KIND_MONTHLY' | 'PERIOD_KIND_QUARTERLY' | 'PERIOD_KIND_YEARLY': Length of the current budget period.
    - `periodStart` string, date-time, nullable
    - `scope` C1ApiFundsV1AccountScope: AccountScope identifies the tenant, user, application, or user-application account against which spending was admitted. This message contains a oneof named kind. Only a single field of the following list may be set at a time: - tenant - subject - app - subjectApp
      - `app` C1ApiFundsV1AppScope: AppScope identifies one application's account.
        - `appId` string: Application ID of the account.
      - `subject` C1ApiFundsV1SubjectScope: SubjectScope identifies one user's account.
        - `userId` string: User ID of the account owner.
      - `subjectApp` C1ApiFundsV1SubjectAppScope: SubjectAppScope identifies one user's account for an application.
        - `appId` string: Application ID of the account.
        - `userId` string: User ID of the account owner.
      - `tenant` C1ApiFundsV1TenantScope: TenantScope identifies the organization-wide account.
  - `state` 'EFFECTIVE_LIMITS_STATE_UNSPECIFIED' | 'EFFECTIVE_LIMITS_STATE_RESOLVED' | 'EFFECTIVE_LIMITS_STATE_NO_POLICY' | 'EFFECTIVE_LIMITS_STATE_NO_CEILING' | 'EFFECTIVE_LIMITS_STATE_DENIED': Result of resolving the caller's effective limits.

## Changes

- **2026-10-20** `fe943bedf41b`: 2 breaking, 6 warning, 8 info
  - added `#/components/schemas/c1.api.funds.v1.AccountScope` to the `block/oneOf[subschema #1: My Spend Block]/scope` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/c1.api.funds.v1.AccountScope` to the `scopes/items/scope` response property `oneOf` list for the response status `200`
  - added the new `SPEND_DENY_REASON_APP_PAUSED_BY_YOU` enum value to the `block/oneOf[subschema #1: My Spend Block]/reason` response property for the response status `200`
  - added the new `SPEND_DENY_REASON_APP_SUSPENDED` enum value to the `block/oneOf[subschema #1: My Spend Block]/reason` response property for the response status `200`
  - …12 more
- **2026-10-06** `918a4e749f56`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/conductorone/apis/c1-api/changes/api/v1/spend-insights/my/status/get.md)

---

[API](https://skmtc.dev/conductorone/apis/c1-api.md) - [All operations](https://skmtc.dev/conductorone/apis/c1-api/llms.txt) - [OpenAPI document](https://skmtc.dev/conductorone/apis/c1-api/revisions/fe943bedf41b?raw)
