UNPKG

@anthropic-ai/sdk

Version:
128 lines • 5.79 kB
import { APIResource } from "../../../../core/resource.mjs"; import * as SpendLimitsAPI from "./spend-limits.mjs"; import { APIPromise } from "../../../../core/api-promise.mjs"; import { PageCursor, type PageCursorParams, PagePromise } from "../../../../core/pagination.mjs"; import { RequestOptions } from "../../../../internal/request-options.mjs"; export declare class IncreaseRequests extends APIResource { /** * Retrieve a spend limit increase request. * * While `pending`, the response includes a live `spend_summary` for the requester * at the request's period. * * @example * ```ts * const betaSpendLimitIncreaseRequest = * await client.beta.organization.spendLimits.increaseRequests.retrieve( * 'spend_limit_increase_request_id', * ); * ``` */ retrieve(spendLimitIncreaseRequestID: string, options?: RequestOptions): APIPromise<BetaSpendLimitIncreaseRequest>; /** * List spend limit increase requests, most recent first. * * Pending requests include a live `spend_summary` for the requester. Requests * whose requester is no longer a member are excluded. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const betaSpendLimitIncreaseRequest of client.beta.organization.spendLimits.increaseRequests.list()) { * // ... * } * ``` */ list(query?: IncreaseRequestListParams | null | undefined, options?: RequestOptions): PagePromise<BetaSpendLimitIncreaseRequestsPageCursor, BetaSpendLimitIncreaseRequest>; /** * Approve a pending spend limit increase request. * * Writes a per-user spend limit at `amount` for the requester and transitions the * request to `approved`. `period` defaults to the period the member was blocked * on. Anthropic emails the requester unless `suppress_notification` is set. * * @example * ```ts * const response = * await client.beta.organization.spendLimits.increaseRequests.approve( * 'spend_limit_increase_request_id', * { amount: '50000' }, * ); * ``` */ approve(spendLimitIncreaseRequestID: string, body: IncreaseRequestApproveParams, options?: RequestOptions): APIPromise<IncreaseRequestApproveResponse>; /** * Deny a pending spend limit increase request. * * Idempotent on `denied`; denying an already-`approved` request returns 400. * Anthropic emails the requester unless `suppress_notification` is set. * * @example * ```ts * const betaSpendLimitIncreaseRequest = * await client.beta.organization.spendLimits.increaseRequests.deny( * 'spend_limit_increase_request_id', * ); * ``` */ deny(spendLimitIncreaseRequestID: string, body: IncreaseRequestDenyParams, options?: RequestOptions): APIPromise<BetaSpendLimitIncreaseRequest>; } export type BetaSpendLimitIncreaseRequestsPageCursor = PageCursor<BetaSpendLimitIncreaseRequest>; export interface BetaSpendLimitIncreaseRequest { id: string; actor: SpendLimitsAPI.BetaSpendLimitUserActor | SpendLimitsAPI.BetaSpendLimitScopedAPIKeyActor; created_at: string; period: SpendLimitsAPI.BetaSpendLimitPeriod; resolved_at: string | null; resolved_by: SpendLimitsAPI.BetaSpendLimitUserActor | SpendLimitsAPI.BetaSpendLimitScopedAPIKeyActor | null; /** * Per-member effective-limit report row (`GET /spend_limits/effective`). */ spend_summary: SpendLimitsAPI.BetaSpendSummary | null; status: BetaSpendLimitIncreaseRequestStatus; type: 'spend_limit_increase_request'; } export type BetaSpendLimitIncreaseRequestStatus = 'approved' | 'denied' | 'pending'; export interface IncreaseRequestApproveResponse { id: string; actor: SpendLimitsAPI.BetaSpendLimitUserActor | SpendLimitsAPI.BetaSpendLimitScopedAPIKeyActor; created_at: string; period: SpendLimitsAPI.BetaSpendLimitPeriod; resolved_at: string | null; resolved_by: SpendLimitsAPI.BetaSpendLimitUserActor | SpendLimitsAPI.BetaSpendLimitScopedAPIKeyActor | null; /** * A configured spend limit: a cap on metered spend for one scope and period. */ spend_limit: SpendLimitsAPI.BetaSpendLimit; /** * Per-member effective-limit report row (`GET /spend_limits/effective`). */ spend_summary: SpendLimitsAPI.BetaSpendSummary | null; status: BetaSpendLimitIncreaseRequestStatus; type: 'spend_limit_increase_request'; } export interface IncreaseRequestListParams extends PageCursorParams { /** * Filter by requester, as `user_...` tagged IDs. */ actor_ids?: Array<string> | null; /** * Filter by status. Omit to return all. */ status?: Array<BetaSpendLimitIncreaseRequestStatus> | null; } export interface IncreaseRequestApproveParams { /** * New per-user spend limit as a non-negative integer decimal string (minor units). */ amount: string; period?: SpendLimitsAPI.BetaSpendLimitPeriod | null; suppress_notification?: boolean; } export interface IncreaseRequestDenyParams { suppress_notification?: boolean; } export declare namespace IncreaseRequests { export { type BetaSpendLimitIncreaseRequest as BetaSpendLimitIncreaseRequest, type BetaSpendLimitIncreaseRequestStatus as BetaSpendLimitIncreaseRequestStatus, type IncreaseRequestApproveResponse as IncreaseRequestApproveResponse, type BetaSpendLimitIncreaseRequestsPageCursor as BetaSpendLimitIncreaseRequestsPageCursor, type IncreaseRequestListParams as IncreaseRequestListParams, type IncreaseRequestApproveParams as IncreaseRequestApproveParams, type IncreaseRequestDenyParams as IncreaseRequestDenyParams, }; } //# sourceMappingURL=increase-requests.d.mts.map