Gerenciamento de Planos Customizados

Organizações corporativas agora podem criar planos de assinatura customizados e atribuí-los a organizações filhas com configuração de quantidade de documentos, créditos de verificação, tier e comportamento de renovação.

Como utilizar

  1. Crie um plano de assinatura usando createSubscriptionPlan

  2. Liste seus planos com subscriptionPlans

  3. Atribua planos a organizações filhas usando updateOrganizationSubscription

Queries

subscriptionPlans

query SubscriptionPlans(
  $id: Int,         # Opcional: ID específico do plano para recuperar
  $limit: Int,      # Opcional: Máximo de resultados por página (padrão: 60, máx: 60)
  $page: Int        # Opcional: Número da página (padrão: 1)
) {
  subscriptionPlans(id: $id, limit: $limit, page: $page) {
    # Consulte o tipo CorporatePlan abaixo
    id
    display_name
    document_amount
    credit_amount
    credits_recurrence_method
    interval
    interval_type
    tier
  }
}

Mutations

createSubscriptionPlan

mutation CreateSubscriptionPlan(
  $plan: SubscriptionPlanInput!  # Consulte SubscriptionPlanInput abaixo
) {
  createSubscriptionPlan(plan: $plan) {
    # Consulte o tipo CorporatePlan abaixo
    id
    display_name
    document_amount
    credit_amount
    credits_recurrence_method
    interval
    interval_type
    tier
  }
}

updateSubscriptionPlan

mutation UpdateSubscriptionPlan(
  $id: Int!,                     # ID do plano a ser atualizado
  $plan: SubscriptionPlanInput!  # Consulte SubscriptionPlanInput abaixo
) {
  updateSubscriptionPlan(id: $id, plan: $plan) {
    # Consulte o tipo CorporatePlan abaixo
    id
    display_name
    document_amount
    credit_amount
    credits_recurrence_method
    interval
    interval_type
    tier
  }
}

updateOrganizationSubscription

mutation UpdateOrganizationSubscription(
  $organization_id: Int!,              # ID da organização filha para atualizar
  $plan_id: Int!,                      # ID do plano para atribuir
  $renew_date: InternationalDateScalar # Opcional: Data de renovação customizada (ex: '2026-12-01') (Padrão: Próximo intervalo de recorrência)
) {
  updateOrganizationSubscription(
    organization_id: $organization_id,
    plan_id: $plan_id,
    renew_date: $renew_date
  ) {
    # Consulte o tipo Subscription abaixo
    name
    documents
    credits
    credits_bonus
    renew_at
    bought_at
  }
}

Referência do Schema

Tipos de Input

SubscriptionPlanInput

input SubscriptionPlanInput {
  display_name: String!                    # Nome do plano
  document_amount: Int!                    # Quantidade de documentos disponíveis durante o intervalo (> 0)
  credit_amount: Int!                      # Créditos de verificação disponíveis durante o intervalo (> 0)
  interval: Int                            # Fator do intervalo (padrão: 1) (ex: interval: 1 & interval_type: MONTH ... renovação a cada 1 mês)
  interval_type: IntervalTypeEnum          # Tipo do intervalo (padrão: MONTH) (ex: interval: 1 & interval_type: MONTH ... renovação a cada 1 mês)
  tier: TierEnum                           # Tier do plano (padrão: FREE)
  credits_recurrence_method: CreditsRecurrenceEnum # Comportamento dos créditos de verificação (padrão: DETACHED)
}

Tipos de Retorno

CorporatePlan

type CorporatePlan {
  id: String!                                       # ID do plano
  display_name: String!                             # Nome de exibição do plano
  document_amount: Int!                             # Quantidade de documentos disponíveis durante o intervalo
  credit_amount: Int!                               # Créditos de verificação por intervalo
  credits_recurrence_method: CreditsRecurrenceEnum! # Comportamento de renovação dos créditos
  interval: Int!                                    # Fator do intervalo de cobrança
  interval_type: IntervalTypeEnum!                  # Tipo do intervalo de cobrança
  tier: TierEnum!                                   # Nível do tier do plano
}

Subscription

type Subscription {
  name: String                     # Nome de exibição do plano
  documents: Int!                  # Contagem de documentos disponíveis
  credits: Int                     # Créditos de verificação disponíveis
  credits_bonus: Int               # Créditos de verificação destacados (Ao usar a opção DETACHED)
  renew_at: TimestampScalar        # Data da próxima renovação automática
  bought_at: TimestampScalar       # Data de compra/criação
}

Enums

CreditsRecurrenceEnum

  • DETACHED: O saldo de créditos de verificação da renovação é um valor independente, facilitando que a renovação funcione junto com créditos adquiridos

  • OVERRIDE: O saldo de créditos de verificação é resetado para a quantidade do plano se estiver menor na renovação

IntervalTypeEnum

  • DAY: Cobrança diária

  • WEEK: Cobrança semanal

  • MONTH: Cobrança mensal

  • YEAR: Cobrança anual

TierEnum

  • FREE: Este tier pode usar apenas recursos básicos

  • PROFESSIONAL: Este tier permite o uso de todos os recursos (Marcado com "Pro" na plataforma)

Atualizado

Isto foi útil?