Skip to main content
GET

Endpoint

Authentication

Requires a valid API key with billing:read scope.

Response

Returns the user’s subscription object or null if no subscription exists.
subscription
object | null

Errors

401
error
Unauthorized - Missing or invalid API key
500
error
Internal Server Error - Failed to fetch subscription

Subscription Plans

5 Plan Tiers with different feature limits:

Seed (€22/month)

  • 1 farm
  • 50 AI requests/month
  • 30 chat messages/month
  • Basic analytics
  • Email support

Sprout (€49/month)

  • 3 farms
  • 200 AI requests/month
  • 100 chat messages/month
  • Team collaboration (5 members)
  • Farm budgeting
  • 7 farms
  • 500 AI requests/month
  • 300 chat messages/month
  • Vision AI Full (50 scans/mo)
  • Market Intelligence (20 queries/mo)
  • Task templates

Grove (€149/month)

  • 15 farms
  • 1,000 AI requests/month
  • 1,000 chat messages/month
  • Financial AI Insights
  • P&L reports, invoices
  • Priority support

Summit (€299+/month)

  • Unlimited farms
  • Unlimited AI requests
  • Unlimited chat messages
  • API access
  • Dedicated support
  • SLA guarantee

Subscription Statuses

Use Cases

Check Subscription Status

Check Feature Access

Check Renewal Date

Check Payment Status

Best Practices

Cache Subscription Data: Cache subscription status locally and refresh periodically to reduce API calls.
Handle Null Gracefully: subscription: null means no active subscription (expired). Don’t treat it as an error.
Check Before Paid Features: Always verify subscription status before showing paid features.
Show Renewal Dates: Display currentPeriodEnd to users so they know when they’ll be charged.
Past Due Status: Subscriptions with status: "past_due" still have access but payment failed. Prompt user to update payment method.
Cancel At Period End: If cancelAtPeriodEnd: true, subscription will end at currentPeriodEnd. Show this clearly to user.

Integration Examples

Subscription Status Card

Feature Gate Component

Plan Comparison Hook