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.

33.6/100 thin ▬ flat Agent 20/100 agent aware Full breakdown ↓
scored 2026-08-25 · rubric v0.14.0
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-25 · rubric v0.14.0
Composite quality — 33.6/100 · thin
Contract Quality 12.8 / 21
Developer Ergonomics 3.6 / 17
Access Clarity 2.7 / 17
Operational Transparency 1.5 / 11
Contract Governance 1.4 / 10
Discoverability 6.3 / 9
Regulatory Posture 3.2 / 15
Agent readiness — 20/100 · agent aware
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
Documented Reversibility 0 / 6
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
Delegated User Identity 0 / 6
Protected Resource Metadata 0 / 5
Registration Without a Human 0 / 6
Agentic Commerce Surface 0 / 5
Regulatory Posture applies to this provider. Its tags matched the Health regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
The six quality facets above are damped to 85 points between them, because the conditional facet above carries the other 15. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 85% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
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 11

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

API Collection

OPEN COLLECTION

Scroll for all 11

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
tags_raw:
- 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.23'
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:
  - Application
  tags_raw:
  - 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:
  - Notification
  tags_raw:
  - 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

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/terrain-discovery-environment-api"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/terrain-discovery-environment-api/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/terrain-discovery-environment-api/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.