Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.withleaf.io/llms.txt

Use this file to discover all available pages before exploring further.

Leaf connects to the CLAAS partner API using OAuth 2.0. Once connected, Leaf syncs equipment outbox files (ISO 11783 / ISOXML format) and processes them through the standard operations pipeline.

Prerequisites

  1. OAuth client credentials (clientKey and clientSecret) for the CLAAS partner/OFT API.
  2. A grower’s refreshToken obtained through the CLAAS OAuth 2.0 consent flow.

Setup steps

  1. Complete the CLAAS OAuth 2.0 flow to obtain a refreshToken for the grower’s account.
  2. POST the credentials to Leaf:
curl -X POST \
    -H 'Authorization: Bearer YOUR_TOKEN' \
    -H 'Content-Type: application/json' \
    -d '{
      "clientKey": "your-client-key",
      "clientSecret": "your-client-secret",
      "refreshToken": "grower-refresh-token",
      "clientEnvironment": "PRODUCTION"
    }' \
    'https://api.withleaf.io/services/usermanagement/api/users/{leafUserId}/claas-credentials'
  1. Leaf validates the credentials and begins syncing. Check credential status with GET /users/{leafUserId}/claas-credentials.

Credentials schema

Create request body:
FieldTypeRequiredDescription
clientKeystringYesYour application’s client key from CLAAS
clientSecretstringYesYour application’s client secret
refreshTokenstringYesThe grower’s OAuth refresh token
clientEnvironmentstringNoSTAGE or PRODUCTION. Defaults to STAGE if omitted
Response:
{
  "id": "uuid",
  "status": "str",
  "createdTime": "yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'",
  "clientKey": "str",
  "clientSecret": "str",
  "refreshToken": "str",
  "clientEnvironment": "PRODUCTION"
}

Endpoints

Base URL: https://api.withleaf.io/services/usermanagement/api
ActionMethodPath
Get credentialsGET/users/{leafUserId}/claas-credentials
Create credentialsPOST/users/{leafUserId}/claas-credentials
Delete credentialsDELETE/users/{leafUserId}/claas-credentials
Get credential eventsGET/users/{leafUserId}/claas-credentials/events

Troubleshooting

Use the events endpoint to inspect credential health:
curl -X GET \
    -H 'Authorization: Bearer YOUR_TOKEN' \
    'https://api.withleaf.io/services/usermanagement/api/users/{leafUserId}/claas-credentials/events'
Event logs are retained for 30 days. Once the credential is deleted or disassociated from the Leaf user, the logs are no longer available.
Common issues:
  • Status changes to invalid: The grower may have revoked access or the refresh token expired. Have the grower re-authorize through the CLAAS OAuth flow.
  • STAGE vs. PRODUCTION mismatch: Make sure clientEnvironment matches the environment your CLAAS app is registered in. If omitted, Leaf defaults to STAGE.

What to do next

Last modified on March 23, 2026