// This file was auto-generated by Fern from our API Definition. import type * as Vapi from "../index.js"; export interface Subscription { /** This is the unique identifier for the subscription. */ id: string; /** This is the timestamp when the subscription was created. */ createdAt: string; /** This is the timestamp when the subscription was last updated. */ updatedAt: string; /** * This is the display name for the subscription, used to tell subscriptions * apart in the dashboard. It is unique across all subscriptions and does not * appear on invoices, which use the company details on the invoice plan. */ name?: (string | null) | undefined; /** This is the type / tier of the subscription. */ type: Vapi.SubscriptionType; /** * This is the status of the subscription. Past due subscriptions are subscriptions * with past due payments. */ status: Vapi.SubscriptionStatus; /** * This is the number of credits the subscription currently has. * * Note: This is a string to avoid floating point precision issues. */ credits: string; /** This is the total number of active calls (concurrency) across all orgs under this subscription. */ concurrencyCounter: number; /** This is the default concurrency limit for the subscription. */ concurrencyLimitIncluded: number; /** This is the number of free phone numbers the subscription has */ phoneNumbersCounter?: number | undefined; /** This is the maximum number of free phone numbers the subscription can have */ phoneNumbersIncluded?: number | undefined; /** This is the purchased add-on concurrency limit for the subscription. */ concurrencyLimitPurchased: number; /** This is the ID of the monthly job that charges for subscription add ons and phone numbers. */ monthlyChargeScheduleId?: number | undefined; /** * This is the ID of the monthly job that checks whether the credit balance of the subscription * is sufficient for the monthly charge. */ monthlyCreditCheckScheduleId?: number | undefined; /** This is the Stripe customer ID. */ stripeCustomerId?: string | undefined; /** This is the Stripe payment ID. */ stripePaymentMethodId?: string | undefined; /** * This is the HIPAA enabled flag for the subscription. It determines whether orgs under this * subscription have the option to enable HIPAA compliance. */ hipaaEnabled?: boolean | undefined; /** * This is the ZDR enabled flag for the subscription. It determines whether orgs under this * subscription have the option to enable ZDR. */ zdrEnabled?: boolean | undefined; /** * This is the data retention enabled flag for the subscription. It determines whether orgs under this * subscription have the option to enable data retention. */ dataRetentionEnabled?: boolean | undefined; /** This is the ID for the Common Paper agreement outlining the HIPAA contract. */ hipaaCommonPaperAgreementId?: string | undefined; /** * This is the Stripe fingerprint of the payment method (card). It allows us * to detect users who try to abuse our system through multiple sign-ups. */ stripePaymentMethodFingerprint?: string | undefined; /** This is the customer's email on Stripe. */ stripeCustomerEmail?: string | undefined; /** This is the email of the referrer for the subscription. */ referredByEmail?: string | undefined; /** This is the auto reload plan configured for the subscription. */ autoReloadPlan?: Vapi.AutoReloadPlan | undefined; /** The number of minutes included in the subscription. */ minutesIncluded?: number | undefined; /** The number of minutes used in the subscription. */ minutesUsed?: number | undefined; /** This is the timestamp at which the number of monthly free minutes is scheduled to reset at. */ minutesUsedNextResetAt?: string | undefined; /** The per minute charge on minutes that exceed the included minutes. Enterprise only. */ minutesOverageCost?: number | undefined; /** The list of providers included in the subscription. Enterprise only. */ providersIncluded?: string[] | undefined; /** The maximum number of outbound calls this subscription may make in a day. Resets every night. */ outboundCallsDailyLimit?: number | undefined; /** The current number of outbound calls the subscription has made in the current day. */ outboundCallsCounter?: number | undefined; /** This is the timestamp at which the outbound calls counter is scheduled to reset at. */ outboundCallsCounterNextResetAt?: string | undefined; /** This is the IDs of the coupons applicable to this subscription. */ couponIds?: string[] | undefined; /** This is the number of credits left obtained from a coupon. */ couponUsageLeft?: string | undefined; /** This is the invoice plan for the subscription. */ invoicePlan?: Vapi.InvoicePlan | undefined; /** * This is the PCI enabled flag for the subscription. It determines whether orgs under this * subscription have the option to enable PCI compliance. */ pciEnabled?: boolean | undefined; /** This is the ID for the Common Paper agreement outlining the PCI contract. */ pciCommonPaperAgreementId?: string | undefined; /** This is the call retention days for the subscription. */ callRetentionDays?: (number | null) | undefined; /** This is the chat retention days for the subscription. */ chatRetentionDays?: (number | null) | undefined; /** This is the minutes_included reset frequency for the subscription. */ minutesIncludedResetFrequency?: Vapi.SubscriptionMinutesIncludedResetFrequency | undefined; /** This is the Role Based Access Control (RBAC) enabled flag for the subscription. */ rbacEnabled?: boolean | undefined; /** This is the platform fee for the subscription. */ platformFee?: number | undefined; /** * This is how payment is collected for the subscription: charged to the card * on file, or invoiced. */ billingCollectionMethod?: (Vapi.SubscriptionBillingCollectionMethod | null) | undefined; }