Skip to main content
API-key surface (2026-05-18) — API keys authenticate the versioned /api/v1/* surface. 51 endpoints across 7 scope families are live today (Farms, Crops, Fields/Blocks/Plants, Tasks/Recurring/Templates, Crop Library, Analytics, Market Intelligence). Key minting is Summit-tier only. Remaining batches (AI, Billing, Team, User Profile) are queued — pages for those endpoints are noindexed until the routes ship. Track the API Reference for the current list.

API keys

WiseYield API keys are bearer tokens scoped to a single user and a set of capabilities. They are issued from the WiseYield dashboard and never round-trip through any other system.

Creating a key

  1. Sign in to your WiseYield dashboard.
  2. Open Settings → API Keys.
  3. Click Create API Key.
  4. Give it a descriptive name (e.g. “Production server”, “Mobile app”).
  5. Choose Environment: live or test.
  6. Pick the scopes the key needs (least-privilege).
  7. Copy the key immediately — the full secret is shown once and never again.
Each user is limited to 10 active API keys at a time. Revoke unused keys before creating new ones.

Key format

Examples:
  • Prefix: wy_ (identifies WiseYield).
  • Environment: live_ (production data) or test_ (test data).
  • Random: 48 hexadecimal characters (24 bytes from a cryptographic RNG).
Keys are stored as a SHA-256 hash. Once created, the cleartext value cannot be retrieved — only the prefix and a usage summary are visible in the dashboard.

Making authenticated requests

Send the API key in the Authorization header using the Bearer scheme:

Scopes

API keys carry a list of scopes. Requests are rejected with 403 Forbidden (INSUFFICIENT_SCOPE) when a key is missing the scope required by an endpoint.

Example: read-only integration

Rate limits

Rate limits are applied per user, sliding-window, by subscription tier. The system fails closed: if the rate-limit backend is unreachable in production, requests are denied. A 14-day trial grants Harvest-level access. Billing currency is auto-detected per the buyer’s country at checkout (EUR-denominated, via Dodo Adaptive Currency).

Rate-limit headers

Every response (success or rate-limited) carries the current window state:
  • X-RateLimit-Limit — total requests allowed in the current window.
  • X-RateLimit-Remaining — requests remaining before the limit kicks in.
  • X-RateLimit-ResetISO 8601 timestamp when the sliding window opens again.

When you hit the limit

Implement exponential backoff or schedule retries against X-RateLimit-Reset:

Error responses

Authentication and authorization errors share a common shape:

Security best practices

Never hard-code keys. Use environment variables or a secrets manager.
Use distinct keys for development, staging, and production. Scope them tightly and rotate them independently.
When creating a key you can set an IP allowlist in metadata.ipWhitelist. Requests from any other origin return 403 IP_NOT_WHITELISTED.
Rotate keys at least every 90 days, and immediately when:
  • Someone with access leaves the team
  • A key may have been exposed (logs, repos, screenshots)
  • Compliance requires it
The dashboard shows last-used timestamp, request volume, and error rate per key. Investigate unfamiliar patterns or sudden spikes.

Revoking a key

If a key is compromised or no longer needed:
  1. Go to Settings → API Keys.
  2. Find the key by name or prefix.
  3. Click Revoke.
Revoked keys are invalidated immediately. Any client still presenting the key will start receiving 401 INVALID_API_KEY.

Next steps

Quickstart

Make your first authenticated request

API Reference

Browse every endpoint