farmOS website screenshot

farmOS

Open-source farm management and record-keeping system with a JSON:API-based REST API for managing assets, logs, plans, and farm records. Supports self-hosted deployments and managed hosting via Farmier. Authentication uses OAuth2 with Authorization Code, Password Credentials, and Client Credentials grant types.

farmOS publishes 6 APIs on the APIs.io network, including Assets API, Logs API, Plans API, and 3 more. Tagged areas include Agriculture, Farm Management, Open Source, JSON:API, and Record Keeping.

The farmOS catalog on APIs.io includes 1 JSON-LD context and 1 Spectral governance ruleset.

farmOS’s developer surface includes authentication, documentation, engineering blog, pricing, and 13 more developer resources.

44.7/100 developing ▼ -5.7 Agent 31/100 agent aware Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreemiumSelf serveFree trial⚡ Free to try
6 APIs
AgricultureFarm ManagementOpen SourceJSON:APIRecord KeepingSelf-HostedDrupal

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 44.7/100 · developing
Contract Quality 15.3 / 25
Developer Ergonomics 4.3 / 20
Commercial Clarity 10.0 / 20
Operational Transparency 0.7 / 13
Governance 7.0 / 12
Discoverability 7.4 / 10
Agent readiness — 31/100 · agent aware
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/farmos: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 6

Individual APIs this provider publishes, each with its own machine-readable definition.

farmOS Assets API

Physical or logical farm assets (land, animals, equipment, plants, etc.)

farmOS Logs API

Farm activity records (activities, observations, inputs, harvests, etc.)

farmOS Plans API

Farm planning records

farmOS Quantities API

Measurement quantities associated with logs

farmOS Server Info API

Server metadata and available resource types

farmOS Taxonomy API

Taxonomy term resources (categories, types, units)

Pricing Plans 1

Published pricing tiers and plan structures.

Farmos Plans Pricing

4 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Farmos Rate Limits

0 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Farmos Context

41 classes · 30 properties

JSON-LD

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

farmOS API Rules

6 rules · 5 warnings 1 info

SPECTRAL

JSON Schema 3

Standalone JSON Schema definitions for this provider's data models.

farmOS Asset

3 properties

JSON SCHEMA

farmOS Log

3 properties

JSON SCHEMA

farmOS Quantity

1 properties

JSON SCHEMA

Examples 3

Example request and response payloads for these APIs.

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Farmos Authentication

oauth2 · 2 schemes

SECURITY

Farmos Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Scopes 1

OAuth scopes governing access to this provider's APIs.

Farmos Scopes

3 scopes · authorizationCode/clientCredentials

3 scopes

SCOPES

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Farmos Agentic Access

100 operations · 57 acting

100 operations · 57 acting

AGENTIC

Resources

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 3

Authentication, authorization, and security posture

Operate 2

Status, limits, changes, and where to get help

Commercial 3

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Other 2

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: farmos
name: farmOS
description: Open-source farm management and record-keeping system with a JSON:API-based REST API for managing assets, logs,
  plans, and farm records. Supports self-hosted deployments and managed hosting via Farmier. Authentication uses OAuth2 with
  Authorization Code, Password Credentials, and Client Credentials grant types.
type: Index
accessModel:
  pricing: freemium
  onboarding: self-serve
  trial: true
  try_now: true
  public: false
  label: Freemium (free trial) · Self-serve signup
  confidence: high
  source:
  - plans
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/farmos.png
url: https://raw.githubusercontent.com/api-evangelist/farmos/refs/heads/main/apis.yml
created: '2026-06-13'
modified: '2026-06-13'
specificationVersion: '0.19'
tags:
- Agriculture
- Farm Management
- Open Source
- JSON:API
- Record Keeping
- Self-Hosted
- Drupal
apis:
- aid: farmos:farmos-assets-api
  name: farmOS Assets API
  description: Physical or logical farm assets (land, animals, equipment, plants, etc.)
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Assets
  properties:
  - type: OpenAPI
    url: openapi/farmos-assets-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
- aid: farmos:farmos-logs-api
  name: farmOS Logs API
  description: Farm activity records (activities, observations, inputs, harvests, etc.)
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Logs
  properties:
  - type: OpenAPI
    url: openapi/farmos-logs-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
- aid: farmos:farmos-plans-api
  name: farmOS Plans API
  description: Farm planning records
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Plans
  properties:
  - type: OpenAPI
    url: openapi/farmos-plans-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
- aid: farmos:farmos-quantities-api
  name: farmOS Quantities API
  description: Measurement quantities associated with logs
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Quantities
  properties:
  - type: OpenAPI
    url: openapi/farmos-quantities-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
- aid: farmos:farmos-server-info-api
  name: farmOS Server Info API
  description: Server metadata and available resource types
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Server Info
  properties:
  - type: OpenAPI
    url: openapi/farmos-server-info-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
- aid: farmos:farmos-taxonomy-api
  name: farmOS Taxonomy API
  description: Taxonomy term resources (categories, types, units)
  humanURL: https://farmos.org/development/api/
  baseURL: https://{farmOS-host}/api
  tags:
  - Taxonomy
  properties:
  - type: OpenAPI
    url: openapi/farmos-taxonomy-api-openapi.yml
  - type: Documentation
    url: https://farmos.org/development/api/
  - type: Authentication
    url: https://farmos.org/development/api/authentication/
  - type: APIChanges
    url: https://farmos.org/development/api/changes/
  - type: JavaScriptSDK
    url: https://farmos.org/development/farmos-js/
  - type: PythonSDK
    url: https://farmos.org/development/farmos-py/
  - type: GitHubRepository
    url: https://github.com/farmOS/farmOS
common:
- type: AgenticAccess
  url: agentic-access/farmos-agentic-access.yml
- type: DomainSecurity
  url: security/farmos-domain-security.yml
- type: Authentication
  url: authentication/farmos-authentication.yml
- type: OAuthScopes
  url: scopes/farmos-scopes.yml
- type: Website
  url: https://farmos.org/
- type: Documentation
  url: https://farmos.org/development/api/
- type: GitHubOrg
  url: https://github.com/farmOS
- type: Blog
  url: https://farmos.org/blog/
- type: Pricing
  url: https://farmier.com/pricing/
- type: X
  url: https://twitter.com/farmOSorg
- type: Forums
  url: https://farmos.discourse.group/
- type: OpenCollective
  url: https://opencollective.com/farmos
- type: JavaScriptSDK
  url: https://github.com/farmOS/farmOS.js
- type: PythonSDK
  url: https://github.com/farmOS/farmOS.py
- type: Plans
  url: plans/farmos-plans-pricing.yml
- type: RateLimits
  url: rate-limits/farmos-rate-limits.yml
- type: FinOps
  url: finops/farmos-finops.yml
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com