How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

NCI MoDaC API

The NCI Model and Data Clearinghouse (MoDaC) API provides programmatic access to cancer research data, computational models, and associated tools hosted in MoDaC. Developers can search, retrieve metadata, and download model/data artifacts produced by NCI-funded research programs.

NCI MoDaC API is one of 15 APIs that Cancer.gov publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Research Data, Models, and Clearinghouse. The published artifact set on APIs.io includes API documentation and an OpenAPI specification.

This API exposes 37 operations across 34 paths, organized into 17 resource areas, and defines 44 schemas. It is described by OpenAPI 3.0.1.

Requests are made against a single base URL, https://modac.cancer.gov.

37 operations 34 paths 44 schemas 8 GET26 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.1
Base URL
https://modac.cancer.gov
Resource Areas
17

Paths & Operations 37

Across 34 paths, the API surfaces 37 operations — 8 GET, 26 POST, 3 PUT. They span 17 resource areas, including rest-api-common-controller, doe-retry-uploadtask-controller, asset-details-controller, perform-inferencing-controller, home-controller, release-notes-notifications-controller, doe-retry-download-task-controller, doe-sync-download-controller, and 9 more. Each is listed below with its method, path, parameters, and response codes.

rest-api-common-controller 20
PUT
/api/v2/registration
bulkRegistration body → 200
GET
/api/v2/dataObject/**
getDataObject 2 params → 200
PUT
/api/v2/dataObject/**
registerDataObject body → 200
GET
/api/collection/**
getCollection 2 params → 200
PUT
/api/collection/**
registerCollection body → 200
POST
/api/v2/download
downloadDataObjectsOrCollections body → 200
POST
/api/v2/dataObject/**/download
syncAndasynchronousDownload body → 200
POST
/api/v2/collection/**/download
collectionDownload body → 200
POST
/api/models/evaluate/**
performModelEvaluationForReferenceDatasets body → 200
GET
/api/model/evaluate/**
getStatusByTaskId → 200
POST
/api/model/evaluate/**
performModelEvaluationForDatasets 1 param body → 200
POST
/api/dataObject/query
queryDataObjects 1 param body → 200
POST
/api/dataObject/**/syncDownload
synchronousDownload → 200
POST
/api/dataObject/**/generateDownloadRequestURL
generateDownloadRequestURL → 200
POST
/api/collection/query
queryCollections body → 200
GET
/api/v2/registration/**
getDataObjectsRegistrationStatus → 200
GET
/api/download/**
getDataObjectsOrCollectionsDownloadStatus → 200
GET
/api/dataObject/download/**
getDataObjectDownloadStatus → 200
GET
/api/collection/download/**
getCollectionDownloadStatus → 200
GET
/api/authenticate
authenticate → 200
doe-retry-uploadtask-controller 1
POST
/uploadtask
retryUpload 2 params → 200
asset-details-controller 1
POST
/predictionAccessGroups
savePredictionAccessGroups 4 params → 200
perform-inferencing-controller 2
POST
/performInferencing
performInfer body → 200
POST
/performInferencing/performModelAnalysis
performModelAnalysis body → 200
home-controller 1
POST
/metaDataPermissionsList
savePermissionsList 3 params → 200
release-notes-notifications-controller 1
POST
/emailNotifications/subscribe
sendEmailUpdates 1 param → 200
doe-retry-download-task-controller 1
POST
/downloadtask
retryDownload 3 params → 200
doe-sync-download-controller 1
POST
/downloadsync
download body → 200
doe-download-files-controller 1
POST
/downloadfiles/download
download_1 body → 200
doe-download-controller 1
POST
/download
download_2 body → 200
delete-predictions-controller 1
POST
/deletePredictions
deletePredictions body → 200
delete-collection-controller 1
POST
/deleteCollection
deletCollection 2 params → 200
delete-data-file-controller 1
POST
/delete/datafile
deleteObject 1 param → 200
doe-collection-controller 1
POST
/collection
updateCollection body → 200
doe-create-bulk-datafile-controller 1
POST
/addbulk
createDatafile 1 param body → 200
doe-create-datafile-controller 1
POST
/addDatafile
createDatafile_1 1 param body → 200
doe-create-collection-controller 1
POST
/addCollection
createCollection body → 200

Schemas 44

The contract defines 44 schemas that model the data the API accepts and returns. The most detailed are HpcDataObjectRegistrationRequestDTO (19 properties), HpcCollection (18 properties), DoeMetadataAttrEntry (17 properties), DoeDownloadDatafile (16 properties). Each schema is shown below with its type and property counts.

HpcBulkDataObjectRegistrationRequestDTO
object
4 properties
HpcBulkMetadataEntries
object
2 properties
HpcBulkMetadataEntry
object
2 properties
HpcDataObjectRegistrationItemDTO
object
13 properties
HpcDirectoryScanPathMap
object
3 properties
HpcDirectoryScanRegistrationItemDTO
object
15 properties
HpcFileLocation
object
3 properties
HpcGoogleScanDirectory
object
2 properties
HpcMetadataEntry
object
7 properties
HpcS3Account
object
5 properties
HpcS3ScanDirectory
object
2 properties
HpcScanDirectory
object
1 property
HpcStreamingUploadSource
object
6 properties
HpcUploadSource
object
1 property
HpcDataObjectRegistrationRequestDTO
object
19 properties
HpcCollectionRegistrationDTO
object
4 properties
InferencingTaskModel
object
12 properties
DoeDownloadDatafile
object
16 properties
DoeDownloadDatafile_Public
object
16 properties
AjaxResponseBody_Public
object
2 properties
DeletePredictionsModel
object
3 properties
DoeCollectionModel
object
8 properties
DoeMetadataAttrEntry
object
17 properties
HpcCollection
object
18 properties
HpcCollectionListingEntry
object
5 properties
KeyValueBean
object
4 properties
HpcAsperaAccount
object
3 properties
HpcAsperaDownloadDestination
object
2 properties
HpcBoxDownloadDestination
object
3 properties
HpcBulkDataObjectDownloadRequestDTO
object
10 properties
HpcGlobusDownloadDestination
object
2 properties
HpcGoogleDownloadDestination
object
2 properties
HpcS3DownloadDestination
object
2 properties
HpcDownloadRequestDTO
object
9 properties
HpcSynchronousDownloadFilter
object
3 properties
ModelPath
object
1 property
Path
object
1 property
ReferenceDataset
object
1 property
HpcCompoundMetadataQuery
object
3 properties
HpcCompoundMetadataQueryDTO
object
8 properties
HpcMetadataQuery
object
6 properties
HpcMetadataQueryLevelFilter
object
3 properties
DoeDatafileModel
object
4 properties
HpcDataObject
object
9 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

cancer-gov-modac-openapi.yml Raw ↑

Other APIs Cancer.gov publishes across the network.

NCI Clinical Trials Search API
NCI Genomic Data Commons (GDC) API
NCI SEER API
NCI EVS Terminology API
NCI Content Syndication Services
Cancer.gov Diseases API
Cancer.gov Interventions API
Cancer.gov Terms API
Cancer.gov Trials API
NCI Glossary Term API
NCI Drug Dictionary API
Cancer.gov Site-Wide Search API
Where this information came from

This is an independent, third-party profile of NCI MoDaC API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.