fragment SubscriptionFields on Subscription { documentId isActive expiresAt autoRenew customer { ...CustomerFields } subscriptionHistories { ...SubscriptionHistoryFields } } fragment SubscriptionHistoryFields on SubscriptionHistory { documentId period startDate endDate amount currency state paymentId source description } fragment SubscriptionSettingFields on SubscriptionSetting { documentId maxOrdersPerMonth referralRewardDays referralBonusDays description trialPeriodDays trialEnabled } fragment SubscriptionPriceFields on SubscriptionPrice { documentId period price currency isActive description } query GetSubscription($telegramId: Long) { subscriptions(filters: { customer: { telegramId: { eq: $telegramId } } }) { ...SubscriptionFields } } query getSubscriptionSettings { subscriptionSetting { ...SubscriptionSettingFields } } query GetSubscriptionPrices($isActive: Boolean) { subscriptionPrices(filters: { isActive: { eq: $isActive } }, sort: "price:asc") { ...SubscriptionPriceFields } } query GetSubscriptionHistory($subscriptionId: ID!) { subscriptionHistories( filters: { subscription: { documentId: { eq: $subscriptionId } } } sort: "startDate:desc" ) { ...SubscriptionHistoryFields } } mutation CreateSubscription($input: SubscriptionInput!) { createSubscription(data: $input) { ...SubscriptionFields } } mutation UpdateSubscription($documentId: ID!, $data: SubscriptionInput!) { updateSubscription(documentId: $documentId, data: $data) { ...SubscriptionFields } } mutation CreateSubscriptionHistory($input: SubscriptionHistoryInput!) { createSubscriptionHistory(data: $input) { ...SubscriptionHistoryFields } } mutation UpdateSubscriptionHistory($documentId: ID!, $data: SubscriptionHistoryInput!) { updateSubscriptionHistory(documentId: $documentId, data: $data) { ...SubscriptionHistoryFields } }