Terrain Discovery Environment API website screenshot

Terrain Discovery Environment API

Terrain is the primary REST API gateway for CyVerse's Discovery Environment (DE), an open-source data science workbench. Terrain validates user authentication via Keycloak/JWT and orchestrates calls to backend microservices covering filesystem operations, application management, data analysis, metadata annotation, notifications, and persistent identifier management.

Terrain Discovery Environment API publishes 9 APIs on the APIs.io network, including Analyses API, Apps API, Authentication API, and 6 more. Tagged areas include Bioinformatics, Data Science, Life Sciences, Filesystem, and Cloud Computing.

The Terrain Discovery Environment API catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.

Terrain Discovery Environment API’s developer surface includes authentication, developer portal, documentation, and 6 more developer resources.

45.0/100 developing ▬ flat Agent 31/100 agent aware Full breakdown ↓
scored 2026-08-05 · rubric v0.9.1
AccessFreemiumSelf serve⚡ Free to try
9 APIs
BioinformaticsData ScienceLife SciencesFilesystemCloud ComputingOpen Source

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-08-05 · rubric v0.9.1
Composite quality — 45.0/100 · developing
Contract Quality 17.1 / 25
Developer Ergonomics 5.7 / 20
Commercial Clarity 7.9 / 20
Operational Transparency 4.1 / 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/terrain-discovery-environment-api: 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 9

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

Terrain Discovery Environment API Analyses API

Job submission, monitoring, and management

Terrain Discovery Environment API Apps API

Application metadata, discovery, and management

Terrain Discovery Environment API Authentication API

Token and authentication management

Terrain Discovery Environment API Filesystem API

iRODS filesystem operations - browse, create, move, delete files and directories

Terrain Discovery Environment API Identifiers API

Permanent identifier (DOI) requests

Terrain Discovery Environment API Metadata API

File and data metadata annotation

Terrain Discovery Environment API Search API

Full-text search across data and apps

Terrain Discovery Environment API Sharing API

Data sharing and permissions

Scroll for all 9

Open Collections 1

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

FinOps 1

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

Semantic Vocabularies 1

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

Terrain Discovery Environment Api Context

29 classes · 0 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

Terrain Discovery Environment API API Rules

5 rules · 4 warnings 1 info

SPECTRAL

Terrain Discovery Environment API API Rules

8 rules · 1 errors 5 warnings 2 info

SPECTRAL

JSON Schema 1

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

Terrain Analysis

11 properties

JSON SCHEMA

JSON Structure 1

JSON Structure definitions describing this provider's data shapes.

Terrain Filesystem Structure

0 properties

JSON STRUCTURE

Examples 1

Example request and response payloads for these APIs.

Security Posture 2

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

Terrain Discovery Environment Api Authentication

apiKey/http · 2 schemes

SECURITY

Terrain Discovery Environment Api Domain Security

TLSv1.3 · HSTS · DNSSEC · DMARC

SECURITY

Agentic Access 1

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

Terrain Discovery Environment Api Agentic Access

27 operations · 13 acting · 1 human-in-the-loop

27 operations · 13 acting

AGENTIC

Resources

Get Started 2

Portal, sign-up, and the first successful call

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Access & Security 3

Authentication, authorization, and security posture

Learn 1

Tutorials, courses, talks, and written guidance

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: terrain-discovery-environment-api
name: Terrain Discovery Environment API
description: Terrain is the primary REST API gateway for CyVerse's Discovery Environment (DE), an open-source data science
  workbench. Terrain validates user authentication via Keycloak/JWT and orchestrates calls to backend microservices covering
  filesystem operations, application management, data analysis, metadata annotation, notifications, and persistent identifier
  management.
type: Index
accessModel:
  pricing: freemium
  onboarding: self-serve
  trial: false
  try_now: true
  public: false
  label: Freemium · 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/terrain-discovery-environment-api.png
tags:
- Bioinformatics
- Data Science
- Life Sciences
- Filesystem
- Cloud Computing
- Open Source
url: https://raw.githubusercontent.com/api-evangelist/terrain-discovery-environment-api/refs/heads/main/apis.yml
created: '2026-03-16'
modified: '2026-05-19'
specificationVersion: '0.19'
apis:
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-analyses-api
  name: Terrain Discovery Environment API Analyses API
  description: Job submission, monitoring, and management
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Analyses
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-analyses-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-apps-api
  name: Terrain Discovery Environment API Apps API
  description: Application metadata, discovery, and management
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Apps
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-apps-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-authentication-api
  name: Terrain Discovery Environment API Authentication API
  description: Token and authentication management
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Authentication
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-authentication-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-filesystem-api
  name: Terrain Discovery Environment API Filesystem API
  description: iRODS filesystem operations - browse, create, move, delete files and directories
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Filesystem
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-filesystem-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-identifiers-api
  name: Terrain Discovery Environment API Identifiers API
  description: Permanent identifier (DOI) requests
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Identifiers
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-identifiers-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-metadata-api
  name: Terrain Discovery Environment API Metadata API
  description: File and data metadata annotation
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Metadata
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-metadata-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-notifications-api
  name: Terrain Discovery Environment API Notifications API
  description: User notification management
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Notifications
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-notifications-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-search-api
  name: Terrain Discovery Environment API Search API
  description: Full-text search across data and apps
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Search
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-search-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
- aid: terrain-discovery-environment-api:terrain-discovery-environment-api-sharing-api
  name: Terrain Discovery Environment API Sharing API
  description: Data sharing and permissions
  humanURL: https://cyverse.org/Science-APIs
  baseURL: https://de.cyverse.org/terrain
  tags:
  - Sharing
  properties:
  - type: OpenAPI
    url: openapi/terrain-discovery-environment-api-sharing-api-openapi.yml
  - type: Documentation
    url: https://docs.cyverse.org/services/api_overview/
  - type: SwaggerUI
    url: https://de.cyverse.org/terrain/docs
  - type: Repository
    url: https://github.com/cyverse-de/terrain
common:
- type: AgenticAccess
  url: agentic-access/terrain-discovery-environment-api-agentic-access.yml
- type: DomainSecurity
  url: security/terrain-discovery-environment-api-domain-security.yml
- type: Authentication
  url: authentication/terrain-discovery-environment-api-authentication.yml
- name: CyVerse Developer Portal
  url: https://cyverse.org/Science-APIs
  type: Portal
- name: CyVerse Documentation
  url: https://docs.cyverse.org
  type: Documentation
- name: Terrain GitHub Repository
  url: https://github.com/cyverse-de/terrain
  type: Repository
- name: Discovery Environment
  url: https://de.cyverse.org
  type: Portal
- name: Terrain API Webinar
  url: https://cyverse.org/webinar_TerrainAPI
  type: Webinar
- name: Keycloak Authentication
  url: https://docs.cyverse.org/services/getting_started/
  type: Authentication
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com