Harvard Dataverse API

Native REST API of Harvard Dataverse, the institution's research data repository, running Dataverse 6.10.1 (build iqss-4) on Harvard's own AWS infrastructure with no vendor CNAME. Public read operations - search, dataset and file metadata, access to published data - are anonymous; deposit and administration take an X-Dataverse-key token. Harvard serves a live OpenAPI 3.0.3 document at /openapi covering 450 paths and 574 operations. IMPORTANT ATTRIBUTION NOTE: that contract is the Dataverse software's generic contract, shared with every other Dataverse installation - but Dataverse is written by Harvard's own Institute for Quantitative Social Science (github.com/IQSS/dataverse), so unlike every Figshare or Pure contract in this cohort, crediting Harvard here credits Harvard's own engineering. Datasets are minted under DOI prefix 10.7910, registered to DataCite provider harvardu.

OpenAPI Specification

harvard-dataverse-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Dataverse API
  description: Live OpenAPI served by Harvard Dataverse at https://dataverse.harvard.edu/openapi. Dataverse
    is open-source research data repository software authored by Harvard's own Institute for Quantitative
    Social Science (github.com/IQSS/dataverse); this document is the software's generic contract as emitted
    by the Harvard installation (build iqss-4). The deployment, the data, the DOI prefix (10.7910, DataCite
    provider harvardu) and the operations are Harvard's; the contract text is shared with every other
    Dataverse installation.
  version: 6.10.1
  contact:
    name: Harvard Dataverse Support
    email: support@dataverse.harvard.edu
    url: https://dataverse.harvard.edu
servers:
- url: https://dataverse.harvard.edu
  description: Harvard Dataverse production
x-operator: institution
x-provenance:
  generated: '2026-08-19'
  method: searched
  source: https://dataverse.harvard.edu/openapi
  note: Fetched verbatim; pristine copy in openapi/_original/. servers[], info.contact and the info.description
    operator note were added on fetch because the emitted document carries no servers[] block. No paths,
    parameters or schemas were altered.
tags:
- name: addFileToDataset
  description: Uploads a file for a dataset
- name: addFilesToDataset
  description: Uploads a set of files to a dataset
- name: addGlobusFilesToDataset
  description: Uploads a Globus file for a dataset
- name: info
  description: General information about the Dataverse installation.
- name: replaceFilesInDataset
  description: Replace a file to a dataset
- name: saveAuxiliaryFileWithVersion
  description: Save Auxiliary File With Version
- name: uploadDatasetLogo
  description: Uploads a logo for a dataset
paths:
  /access/datafile/bundle/{fileId}:
    get:
      operationId: Access_datafileBundle
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: fileMetadataId
        in: query
        schema:
          format: int64
          type: integer
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/BundleDownloadInstance'
    post:
      operationId: Access_datafileBundleWithGuestbookResponse
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: fileMetadataId
        in: query
        schema:
          format: int64
          type: integer
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/BundleDownloadInstance'
  /access/datafile/{fileId}:
    get:
      operationId: Access_datafile
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          pattern: .+
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
    post:
      operationId: Access_datafileWithGuestbookResponse
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          pattern: .+
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /access/datafile/{fileId}/auxiliary:
    get:
      operationId: Access_listDatafileMetadataAux
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{fileId}/auxiliary/{formatTag}/{formatVersion}:
    get:
      operationId: Access_downloadAuxiliaryFile
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: formatTag
        in: path
        required: true
        schema:
          type: string
      - name: formatVersion
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/DownloadInstance'
    post:
      tags:
      - saveAuxiliaryFileWithVersion
      summary: Save auxiliary file with version
      description: Saves an auxiliary file
      operationId: Access_saveAuxiliaryFileWithVersion
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      - name: formatTag
        in: path
        required: true
        schema:
          type: string
      - name: formatVersion
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: string
      responses:
        '200':
          description: File saved response
        '403':
          description: User not authorized to edit the dataset.
        '400':
          description: File not found based on id.
    delete:
      operationId: Access_deleteAuxiliaryFileWithVersion
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      - name: formatTag
        in: path
        required: true
        schema:
          type: string
      - name: formatVersion
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{fileId}/auxiliary/{origin}:
    get:
      operationId: Access_listDatafileMetadataAuxByOrigin
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: origin
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{fileId}/metadata:
    get:
      operationId: Access_tabularDatafileMetadata
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: exclude
        in: query
        schema:
          type: string
      - name: fileMetadataId
        in: query
        schema:
          format: int64
          type: integer
      - name: include
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/xml:
              schema:
                type: string
  /access/datafile/{fileId}/metadata/ddi:
    get:
      operationId: Access_tabularDatafileMetadataDDI
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      - name: exclude
        in: query
        schema:
          type: string
      - name: fileMetadataId
        in: query
        schema:
          format: int64
          type: integer
      - name: include
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/xml:
              schema:
                type: string
  /access/datafile/{id}/grantAccess/{identifier}:
    put:
      operationId: Access_grantFileAccess
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/listRequests:
    get:
      operationId: Access_listFileAccessRequests
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/rejectAccess/{identifier}:
    put:
      operationId: Access_rejectFileAccess
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/requestAccess:
    put:
      operationId: Access_requestFileAccess
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/revokeAccess/{identifier}:
    delete:
      operationId: Access_revokeFileAccess
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/userFileAccessRequested:
    get:
      operationId: Access_getUserFileAccessRequested
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafile/{id}/userPermissions:
    get:
      operationId: Access_getUserPermissionsOnFile
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/datafiles:
    post:
      operationId: Access_postDownloadDatafiles
      parameters:
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      requestBody:
        content:
          text/plain:
            schema:
              type: string
      responses:
        '200':
          description: OK
  /access/datafiles/{fileIds}:
    get:
      operationId: Access_datafiles
      parameters:
      - name: fileIds
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
    post:
      operationId: Access_datafilesWithGuestbookResponse
      parameters:
      - name: fileIds
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /access/dataset/{id}:
    get:
      operationId: Access_downloadAllFromLatest
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
    post:
      operationId: Access_downloadAllFromLatestWithGuestbookResponse
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /access/dataset/{id}/versions/{versionId}:
    get:
      operationId: Access_downloadAllFromVersion
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: versionId
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: gbrids
        in: query
        schema:
          type: string
      - name: key
        in: query
        schema:
          type: string
      - name: signed
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
    post:
      operationId: Access_downloadAllFromVersionWithGuestbookResponse
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: versionId
        in: path
        required: true
        schema:
          type: string
      - name: gbrecs
        in: query
        schema:
          type: boolean
      - name: key
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /access/dataverseFeaturedItemImage/{itemId}:
    get:
      operationId: Access_getDataverseFeatureItemImage
      parameters:
      - name: itemId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
          content:
            image/png:
              schema:
                format: binary
                type: string
  /access/dsCardImage/{versionId}:
    get:
      operationId: Access_dsCardImage
      parameters:
      - name: versionId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
          content:
            image/png:
              schema:
                format: binary
                type: string
  /access/dvCardImage/{dataverseId}:
    get:
      operationId: Access_dvCardImage
      parameters:
      - name: dataverseId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
          content:
            image/png:
              schema:
                format: binary
                type: string
  /access/fileCardImage/{fileId}:
    get:
      operationId: Access_fileCardImage
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
          content:
            image/png:
              schema:
                format: binary
                type: string
  /access/{id}/allowAccessRequest:
    put:
      operationId: Access_allowAccessRequest
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/archiveAllUnarchivedDatasetVersions:
    post:
      operationId: Admin_archiveAllUnarchivedDatasetVersions
      parameters:
      - name: latestonly
        in: query
        schema:
          type: boolean
      - name: limit
        in: query
        schema:
          format: int32
          type: integer
      - name: listonly
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /admin/assignee/{idtf}:
    get:
      operationId: Admin_findRoleAssignee
      parameters:
      - name: idtf
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/assignments/assignees/{raIdtf}:
    get:
      operationId: Admin_getAssignmentsFor
      parameters:
      - name: raIdtf
        in: path
        required: true
        schema:
          pattern: .*
          type: string
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers:
    get:
      operationId: Admin_listAuthenticatedUsers
      responses:
        '200':
          description: OK
      deprecated: true
    post:
      operationId: Admin_createAuthenicatedUser
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/convert/builtin2oauth:
    put:
      operationId: Admin_builtin2oauth
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/convert/builtin2shib:
    put:
      operationId: Admin_builtin2shib
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/id/{id}:
    delete:
      operationId: Admin_deleteAuthenticatedUserById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/id/{id}/convertRemoteToBuiltIn:
    put:
      operationId: Admin_convertOAuthUserToBuiltin
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/id/{id}/convertShibToBuiltIn:
    put:
      operationId: Admin_convertShibUserToBuiltin
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
      deprecated: true
  /admin/authenticatedUsers/id/{id}/deactivate:
    post:
      operationId: Admin_deactivateAuthenticatedUserById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/{identifier}:
    get:
      operationId: Admin_getAuthenticatedUserByIdentifier
      parameters:
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    delete:
      operationId: Admin_deleteAuthenticatedUser
      parameters:
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/authenticatedUsers/{identifier}/deactivate:
    post:
      operationId: Admin_deactivateAuthenticatedUser
      parameters:
      - name: identifier
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/authenticationProviderFactories:
    get:
      operationId: Admin_listAuthProviderFactories
      responses:
        '200':
          description: OK
  /admin/authenticationProviders:
    get:
      operationId: Admin_listAuthProviders
      responses:
        '200':
          description: OK
    post:
      operationId: Admin_addProvider
      responses:
        '200':
          description: OK
  /admin/authenticationProviders/{id}:
    get:
      operationId: Admin_showProvider
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    delete:
      operationId: Admin_deleteAuthenticationProvider
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/authenticationProviders/{id}/:enabled:
    post:
      operationId: Admin_enableAuthenticationProvider_deprecated
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/authenticationProviders/{id}/enabled:
    get:
      operationId: Admin_checkAuthenticationProviderEnabled
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    put:
      operationId: Admin_enableAuthenticationProvider
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/bannerMessage:
    get:
      operationId: Admin_getBannerMessages
      responses:
        '200':
          description: OK
    post:
      operationId: Admin_addBannerMessage
      responses:
        '200':
          description: OK
  /admin/bannerMessage/{id}:
    delete:
      operationId: Admin_deleteBannerMessage
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/bannerMessage/{id}/deactivate:
    put:
      operationId: Admin_deactivateBannerMessage
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/batch/jobs:
    get:
      operationId: BatchJobResource_listBatchJobs
      responses:
        '200':
          description: OK
  /admin/batch/jobs/name/{jobName}:
    get:
      operationId: BatchJobResource_listBatchJobsByName
      parameters:
      - name: jobName
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/batch/jobs/{jobId}:
    get:
      operationId: BatchJobResource_listBatchJobById
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/clearMetricsCache:
    delete:
      operationId: Admin_clearMetricsCache
      responses:
        '200':
          description: OK
  /admin/clearMetricsCache/{name}:
    delete:
      operationId: Admin_clearMetricsCacheByName
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/clearThumbnailFailureFlag:
    delete:
      operationId: Admin_clearThumbnailFailureFlag
      responses:
        '200':
          description: OK
  /admin/clearThumbnailFailureFlag/{id}:
    delete:
      operationId: Admin_clearThumbnailFailureFlagByDatafile
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/computeDataFileHashValue/{fileId}/algorithm/{alg}:
    post:
      operationId: Admin_computeDataFileHashValue
      parameters:
      - name: alg
        in: path
        required: true
        schema:
          type: string
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/confirmEmail/{userId}:
    get:
      operationId: Admin_getConfirmEmailToken
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
    post:
      operationId: Admin_startConfirmEmailProcess
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/convertUserFromBcryptToSha1:
    post:
      operationId: Admin_convertUserFromBcryptToSha1
      responses:
        '200':
          description: OK
  /admin/datafiles/auditFiles:
    get:
      operationId: Admin_getAuditFiles
      parameters:
      - name: datasetIdentifierList
        in: query
        schema:
          type: string
      - name: firstId
        in: query
        schema:
          format: int64
          type: integer
      - name: lastId
        in: query
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/datafiles/integrity/fixmissingoriginalsizes:
    get:
      operationId: Admin_fixMissingOriginalSizes
      parameters:
      - name: limit
        in: query
        schema:
          format: int32
          type: integer
      responses:
        '200':
          description: OK
  /admin/datafiles/integrity/fixmissingoriginaltypes:
    get:
      operationId: Admin_fixMissingOriginalTypes
      responses:
        '200':
          description: OK
  /admin/datasetfield:
    get:
      operationId: DatasetFieldServiceApi_getAll
      responses:
        '200':
          description: OK
  /admin/datasetfield/controlledVocabulary/subject:
    get:
      operationId: DatasetFieldServiceApi_showControlledVocabularyForSubject
      responses:
        '200':
          description: OK
  /admin/datasetfield/load:
    post:
      operationId: DatasetFieldServiceApi_loadDatasetFields
      requestBody:
        content:
          text/tab-separated-values:
            schema:
              format: binary
              type: string
      responses:
        '200':
          description: OK
  /admin/datasetfield/loadNAControlledVocabularyValue:
    get:
      operationId: DatasetFieldServiceApi_loadNAControlledVocabularyValue
      responses:
        '200':
          description: OK
  /admin/datasetfield/loadpropertyfiles:
    post:
      operationId: DatasetFieldServiceApi_loadLanguagePropertyFile
      requestBody:
        content:
          application/zip:
            schema:
              format: binary
              type: string
      responses:
        '200':
          description: OK
  /admin/datasetfield/setDisplayOnCreate:
    post:
      operationId: DatasetFieldServiceApi_setDisplayOnCreate
      parameters:
      - name: datasetFieldType
        in: query
        schema:
          type: string
      - name: setDisplayOnCreate
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /admin/datasetfield/{name}:
    get:
      operationId: DatasetFieldServiceApi_getByName
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/datasets/integrity/{datasetVersionId}/fixmissingunf:
    post:
      operationId: Admin_fixUnf
      parameters:
      - name: datasetVersionId
        in: path
        required: true
        schema:
          type: string
      - name: forceRecalculate
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
  /admin/datasets/thumbnailMetadata/{id}:
    get:
      operationId: Admin_getDatasetThumbnailMetadata
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/dataverse/curationLabelSets:
    get:
      operationId: Admin_listCurationLabelSets
      responses:
        '200':
          description: OK
  /admin/dataverse/storageDrivers:
    get:
      operationId: Admin_listStorageDrivers
      responses:
        '200':
          description: OK
  /admin/dataverse/{alias}/addRoleAssignmentsToChildren:
    get:
      operationId: Admin_addRoleAssignementsToChildren
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/dataverse/{alias}/curationLabelSet:
    get:
      operationId: Admin_getCurationLabelSet
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    put:
      operationId: Admin_setCurationLabelSet
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      - name: name
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
    delete:
      operationId: Admin_resetCurationLabelSet
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/dataverse/{alias}/storageDriver:
    get:
      operationId: Admin_getStorageDriver
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      - name: getEffective
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: OK
    put:
      operationId: Admin_setStorageDriver
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    delete:
      operationId: Admin_resetStorageDriver
      parameters:
      - name: alias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/downloadTmpFile:
    get:
      operationId: Admin_downloadTmpFile
      parameters:
      - name: fullyQualifiedPathToFile
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/externalTools:
    get:
      operationId: ExternalTools_getExternalTools
      responses:
        '200':
          description: OK
    post:
      operationId: ExternalTools_addExternalTool
      responses:
        '200':
          description: OK
  /admin/externalTools/{id}:
    get:
      operationId: ExternalTools_getExternalTool
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
    delete:
      operationId: ExternalTools_deleteExternalTool
      parameters:
      - name: id
        in: path
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          description: OK
  /admin/featureFlags:
    get:
      operationId: Admin_getFeatureFlags
      responses:
        '200':
          description: OK
  /admin/featureFlags/{flag}:
    get:
      operationId: Admin_getFeatureFlag
      parameters:
      - name: flag
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/feedback:
    post:
      operationId: FeedbackApi_submitFeedback
      responses:
        '200':
          description: OK
  /admin/groups/domain:
    get:
      operationId: Groups_listMailDomainGroups
      responses:
        '200':
          description: OK
    post:
      operationId: Groups_createMailDomainGroup
      responses:
        '200':
          description: OK
  /admin/groups/domain/{groupAlias}:
    get:
      operationId: Groups_getMailDomainGroup
      parameters:
      - name: groupAlias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    put:
      operationId: Groups_updateMailDomainGroups
      parameters:
      - name: groupAlias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    delete:
      operationId: Groups_deleteMailDomainGroup
      parameters:
      - name: groupAlias
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/groups/ip:
    get:
      operationId: Groups_listIpGroups
      responses:
        '200':
          description: OK
    post:
      operationId: Groups_postIpGroup
      responses:
        '200':
          description: OK
  /admin/groups/ip/{group}:
    get:
      operationId: Groups_getIpGroup
      parameters:
      - name: group
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
    put:
      operationId: Groups_putIpGroups
      parameters:
      - name: group
        in: path
        required: true
        schema:
          type: string
      responses:
        '20

# --- truncated at 32 KB (341 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/harvard/refs/heads/main/openapi/harvard-dataverse-openapi.yml