Developers

Emit compatible agricultural evidence without replacing your application.

Ten minutes, synthetic data, no account required. Pick the route that matches what your system produces.

Choose a route

Two integration paths

Route A

Signed event

For telemetry, devices, intervention systems and production applications that already emit structured records.

Route B

Controlled source manifest

For documents, trial records, assay results, model outputs and controlled file stores that must stay where they are.

Step 1

Clone the tagged release

clean machine setup
git clone https://github.com/agevidence/agevidence.git
cd agevidence
git checkout v0.3.0-dev
bin/setup            # installs deps, prepares the local store
agev --version

Step 2 — Route A

Emit a signed event

POST /v1/events
curl -X POST https://api.agevidence.example/v1/events \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: DC-4471:2026-03-14T22:10:04Z" \
  -d @fixtures/dosing_event.json

The envelope carries identifiers, timestamps, source authority, schema version, signatures, an idempotency key for replay safety, and declared limitations. Re-posting the same Idempotency-Key returns the original evidence id rather than duplicating the record.

Step 2 — Route B

Register a controlled source manifest

fixtures/source_manifest.json
{
  "type": "agev.manifest.v1",
  "location": "s3://apex-trials/2026/assay-1182.pdf",
  "content_hash": "sha256:9d4b...",
  "owner": "org:apex-livestock",
  "authority": "lab:nata-1188",
  "access": { "conditions": "nda-2026-014", "consent": "granted" },
  "version": "2",
  "restrictions": ["no-redistribution"],
  "retention": "P7Y"
}

The file never leaves your store. AgEvidence binds its location, hash, owner, authority, access conditions, consent, version, restrictions and retention.

Step 3

Inspect gaps, review, profile and verify

local walkthrough
agev gaps report --case AU-LIVESTOCK-001
# → missing: calibration linkage, reviewer attestation

agev review record --case AU-LIVESTOCK-001 --reviewer you@org --note "calibration supplied out-of-band"
agev profile apply --case AU-LIVESTOCK-001 --profile au.livestock.v1
agev artifact build --case AU-LIVESTOCK-001 --out artifact.json
agev artifact verify artifact.json
# → integrity: ok   profile: au.livestock.v1   reliance: not recorded

Fixtures

  • dosing event; delivery event; calibration event;
  • measurement event; model-run output;
  • processor event; review event; external reliance event.

Failure cases worth trying

  • tamper with a payload byte and re-run verify;
  • omit the authority field and inspect the gap report;
  • apply a profile the evidence does not satisfy;
  • reconstruct a manifest whose content hash has changed.

Status

Public maturity matrix

CapabilityStatusLimitations
Signed event intakeWorkingDevelopment baseline
Source manifestsLimitedRights review required
Evidence projectionWorkingDomain coverage bounded
Gap analysisPartialFixture-dependent
Policy adaptersEarlyProfile-specific
External relianceRecorded onlyAuthority remains external
Managed operationsNot generally availableContract-gated

This is a working development surface, not a production platform. Endpoints shown are illustrative for the local walkthrough.