Harvard University Access API

The Access API from Harvard University — 23 operation(s) for access.

Operations 29

GET /access/datafile/bundle/{fileId} #
POST /access/datafile/bundle/{fileId} #
GET /access/datafile/{fileId} #
POST /access/datafile/{fileId} #
GET /access/datafile/{fileId}/auxiliary #
GET /access/datafile/{fileId}/auxiliary/{formatTag}/{formatVersion} #
DELETE /access/datafile/{fileId}/auxiliary/{formatTag}/{formatVersion} #
GET /access/datafile/{fileId}/auxiliary/{origin} #
GET /access/datafile/{fileId}/metadata #
GET /access/datafile/{fileId}/metadata/ddi #
PUT /access/datafile/{id}/grantAccess/{identifier} #
GET /access/datafile/{id}/listRequests #
PUT /access/datafile/{id}/rejectAccess/{identifier} #
PUT /access/datafile/{id}/requestAccess #
DELETE /access/datafile/{id}/revokeAccess/{identifier} #
GET /access/datafile/{id}/userFileAccessRequested #
GET /access/datafile/{id}/userPermissions #
POST /access/datafiles #
GET /access/datafiles/{fileIds} #
POST /access/datafiles/{fileIds} #
GET /access/dataset/{id} #
POST /access/dataset/{id} #
GET /access/dataset/{id}/versions/{versionId} #
POST /access/dataset/{id}/versions/{versionId} #
GET /access/dataverseFeaturedItemImage/{itemId} #
GET /access/dsCardImage/{versionId} #
GET /access/dvCardImage/{dataverseId} #
GET /access/fileCardImage/{fileId} #
PUT /access/{id}/allowAccessRequest #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/harvard-access-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

harvard-access-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Dataverse Access 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
tags:
- name: Access
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'
      tags:
      - Access
    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'
      tags:
      - Access
  /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
      tags:
      - Access
    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
      tags:
      - Access
  /access/datafile/{fileId}/auxiliary:
    get:
      operationId: Access_listDatafileMetadataAux
      parameters:
      - name: fileId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
  /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'
      tags:
      - Access
    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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /access/datafile/{id}/listRequests:
    get:
      operationId: Access_listFileAccessRequests
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
  /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
      tags:
      - Access
  /access/datafile/{id}/requestAccess:
    put:
      operationId: Access_requestFileAccess
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
  /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
      tags:
      - Access
  /access/datafile/{id}/userFileAccessRequested:
    get:
      operationId: Access_getUserFileAccessRequested
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
  /access/datafile/{id}/userPermissions:
    get:
      operationId: Access_getUserPermissionsOnFile
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
    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
      tags:
      - Access
  /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
      tags:
      - Access
    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
      tags:
      - Access
  /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
      tags:
      - Access
    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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /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
      tags:
      - Access
  /access/{id}/allowAccessRequest:
    put:
      operationId: Access_allowAccessRequest
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      tags:
      - Access
components:
  schemas:
    WorkflowStepSPI:
      type: object
    DatasetFieldCompoundValue:
      type: object
      properties:
        id:
          format: int64
          type: integer
        displayOrder:
          format: int32
          type: integer
        parentDatasetField:
          $ref: '#/components/schemas/DatasetField'
        childDatasetFields:
          type: array
          items:
            $ref: '#/components/schemas/DatasetField'
        linkMap:
          type: object
          additionalProperties:
            type: boolean
        linkScheme:
          type: string
        linkValue:
          type: string
        displayValueMap:
          type: object
          additionalProperties:
            type: string
        link:
          type: string
        linkableField:
          type: boolean
        linkComponents:
          type: object
    EjbDataverseEngine:
      type: object
      properties:
        datasetService:
          $ref: '#/components/schemas/DatasetServiceBean'
        dataverseService:
          $ref: '#/components/schemas/DataverseServiceBean'
        rolesService:
          $ref: '#/components/schemas/DataverseRoleServiceBean'
        usersService:
          $ref: '#/components/schemas/BuiltinUserServiceBean'
        indexService:
          $ref: '#/components/schemas/IndexServiceBean'
        indexBatchService:
          $ref: '#/components/schemas/IndexBatchServiceBean'
        solrIndexService:
          $ref: '#/components/schemas/SolrIndexServiceBean'
        searchServiceFactory:
          $ref: '#/components/schemas/SearchServiceFactory'
        ingestService:
          $ref: '#/components/schemas/IngestServiceBean'
        permissionService:
          $ref: '#/components/schemas/PermissionServiceBean'
        dvObjectService:
          $ref: '#/components/schemas/DvObjectServiceBean'
        dataverseFacetService:
          $ref: '#/components/schemas/DataverseFacetServiceBean'
        featuredDataverseService:
          $ref: '#/components/schemas/FeaturedDataverseServiceBean'
        dataFileService:
          $ref: '#/components/schemas/DataFileServiceBean'
        templateService:
          $ref: '#/components/schemas/TemplateServiceBean'
        savedSearchService:
          $ref: '#/components/schemas/SavedSearchServiceBean'
        fieldTypeInputLevels:
          $ref: '#/components/schemas/DataverseFieldTypeInputLevelServiceBean'
        pidProviderFactory:
          $ref: '#/components/schemas/PidProviderFactoryBean'
        settings:
          $ref: '#/components/schemas/SettingsServiceBean'
        guestbookService:
          $ref: '#/components/schemas/GuestbookServiceBean'
        responses:
          $ref: '#/components/schemas/GuestbookResponseServiceBean'
        metadataBlockService:
          $ref: '#/components/schemas/MetadataBlockServiceBean'
        datasetTypeService:
          $ref: '#/components/schemas/DatasetTypeServiceBean'
        dvLinking:
          $ref: '#/components/schemas/DataverseLinkingServiceBean'
        dsLinking:
          $ref: '#/components/schemas/DatasetLinkingServiceBean'
        dsField:
          $ref: '#/components/schemas/DatasetFieldServiceBean'
        explicitGroups:
          $ref: '#/components/schemas/ExplicitGroupServiceBean'
        groups:
          $ref: '#/components/schemas/GroupServiceBean'
        roleAssignees:
          $ref: '#/components/schemas/RoleAssigneeServiceBean'
        userNotificationService:
          $ref: '#/components/schemas/UserNotificationServiceBean'
        authentication:
          $ref: '#/components/schemas/AuthenticationServiceBean'
        systemConfig:
          $ref: '#/components/schemas/SystemConfig'
        privateUrlService:
          $ref: '#/components/schemas/PrivateUrlServiceBean'
        datasetVersionService:
          $ref: '#/components/schemas/DatasetVersionServiceBean'
        dataCaptureModule:
          $ref: '#/components/schemas/DataCaptureModuleServiceBean'
        em:
          type: object
        logSvc:
          $ref: '#/components/schemas/ActionLogServiceBean'
        workflowService:
          $ref: '#/components/schemas/WorkflowServiceBean'
        fileDownloadService:
          $ref: '#/components/schemas/FileDownloadServiceBean'
        confirmEmailService:
          $ref: '#/components/schemas/ConfirmEmailServiceBean'
        storageUseService:
          $ref: '#/components/schemas/StorageUseServiceBean'
        dataverseFeaturedItemServiceBean:
          $ref: '#/components/schemas/DataverseFeaturedItemServiceBean'
        licenseServiceBean:
          $ref: '#/components/schemas/LicenseServiceBean'
        datasetFieldsValidator:
          $ref: '#/components/schemas/DatasetFieldsValidator'
        innerEngine:
          $ref: '#/components/schemas/EjbDataverseEngineInner'
        cacheFactory:
          $ref: '#/components/schemas/CacheFactoryBean'
        ejbCtxt:
          type: object
        ctxt:
          $ref: '#/components/schemas/CommandContext'
        context:
          $ref: '#/components/schemas/CommandContext'
    AlternativePersistentIdentifier:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dvObject:
          $ref: '#/components/schemas/DvObject'
        protocol:
          type: string
        authority:
          type: string
        globalIdCreateTime:
          format: date
          type: string
          example: 2022-03-10
        identifier:
          type: string
        identifierRegistered:
          type: boolean
        storageLocationDesignator:
          type: boolean
    AuthenticationProviderDisplayInfo:
      type: object
      properties:
        title:
          type: string
        subtitle:
          type: string
        id:
          type: string
    VariableRangeType:
      enum:
      - MIN
      - MAX
      - MIN_EXCLUSIVE
      - MAX_EXCLUSIVE
      - POINT
      type: string
    WorkflowComment:
      type: object
      properties:
        id:
          format: int64
          type: integer
        datasetVersion:
          $ref: '#/components/schemas/DatasetVersion'
        type:
          $ref: '#/components/schemas/Type1'
        message:
          type: string
        authenticatedUser:
          $ref: '#/components/schemas/AuthenticatedUser'
        created:
          type: object
        toBeShown:
          type: boolean
    Retention:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dateUnavailable:
          format: date
          type: string
          example: 2022-03-10
        reason:
          type: string
        dataFiles:
          type: array
          items:
            $ref: '#/components/schemas/DataFile'
        formattedDateUnavailable:
          type: string
    DataFileCategory:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dataset:
          $ref: '#/components/schemas/Dataset'
        name:
          type: string
        fileMetadatas:
          type: array
          items:
            $ref: '#/components/schemas/FileMetadata'
    StorageUseServiceBean:
      type: object
      properties:
        em:
          type: object
    ControlledVocabAlternate:
      type: object
      properties:
        id:
          format: int64
          type: integer
        strValue:
          type: string
        datasetFieldType:
          $ref: '#/components/schemas/DatasetFieldType'
        controlledVocabularyValue:
          $ref: '#/components/schemas/ControlledVocabularyValue'
    DatasetType:
      type: object
      properties:
        id:
          format: int64
          type: integer
        name:
          type: string
        displayName:
          type: string
        description:
          type: string
        metadataBlocks:
          type: array
          items:
            $ref: '#/components/schemas/MetadataBlock'
        licenses:
          type: array
          items:
            $ref: '#/components/schemas/License'
    DataverseFieldTypeInputLevel:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dataverse:
          $ref: '#/components/schemas/Dataverse'
        datasetFieldType:
          $ref: '#/components/schemas/DatasetFieldType'
        include:
          type: boolean
        required:
          type: boolean
        displayOnCreate:
          type: boolean
    ConfirmEmailServiceBean:
      type: object
      properties:
        authenticationService:
          $ref: '#/components/schemas/AuthenticationServiceBean'
        mailService:
          $ref: '#/components/schemas/MailServiceBean'
        systemConfig:
          $ref: '#/components/schemas/SystemConfig'
        dataverseService:
          $ref: '#/components/schemas/DataverseServiceBean'
        em:
          type: object
    DataverseServiceBean:
      type: object
      properties:
        indexService:
          $ref: '#/components/schemas/IndexServiceBean'
        solrIndexService:
          $ref: '#/components/schemas/SolrIndexServiceBean'
        authService:
          $ref: '#/components/schemas/AuthenticationServiceBean'
        datasetService:
          $ref: '#/components/schemas/DatasetServiceBean'
        dataverseLinkingService:
          $ref: '#/components/schemas/DataverseLinkingServiceBean'
        datasetLinkingService:
          $ref: '#/components/schemas/DatasetLinkingServiceBean'
        groupService:
          $ref: '#/components/schemas/GroupServiceBean'
        rolesService:
          $ref: '#/components/schemas/DataverseRoleServiceBean'
        permissionService:
          $ref: '#/components/schemas/PermissionServiceBean'
        dataverseFieldTypeInputLevelService:
          $ref: '#/components/schemas/DataverseFieldTypeInputLevelServiceBean'
        systemConfig:
          $ref: '#/components/schemas/SystemConfig'
        session:
          $ref: '#/components/schemas/DataverseSession'
        em:
          type: object
        datasetSchemaPreface:
          type: string
        startOfMDB:
          type: string
        reqValTemplate:
          type: string
        minItemsTemplate:
          type: string
        endOfReqVal:
          type: string
        endOfjson:
          type: string
        rootDataverseName:
          type: string
        rootDataverseExists:
          type: boolean
        dataverseCount:
          format: int64
          type: integer
    IndexServiceBean:
      type: object
      properties:
        em:
          type: object
        dvObjectService:
          $ref: '#/components/schemas/DvObjectServiceBean'
        dataverseService:
          $ref: '#/components/schemas/DataverseServiceBean'
        datasetService:
          $ref: '#/components/schemas/DatasetServiceBean'
        datasetVersionService:
          $ref: '#/components/schemas/DatasetVersionServiceBean'
        dataverseUserServiceBean:
          $ref: '#/components/schemas/BuiltinUserServiceBean'
        permissionService:
          $ref: '#/components/schemas/PermissionServiceBean'
        userServiceBean:
          $ref: '#/components/schemas/AuthenticationServiceBean'
        systemConfig:
          $ref: '#/components/schemas/SystemConfig'
        searchPermissionsService:
          $ref: '#/components/schemas/SearchPermissionsServiceBean'
        solrIndexService:
          $ref: '#/components/schemas/SolrIndexServiceBean'
        dsLinkingService:
          $ref: '#/components/schemas/DatasetLinkingServiceBean'
        dvLinkingService:
          $ref: '#/components/schemas/DataverseLinkingServiceBean'
        settingsService:
          $ref: '#/components/schemas/SettingsServiceBean'
        solrClientService:
          $ref: '#/components/schemas/SolrClientService'
        solrClientIndexService:
          $ref: '#/components/schemas/SolrClientIndexService'
        dataFileService:
          $ref: '#/components/schemas/DataFileServiceBean'
        datasetFieldService:
          $ref: '#/components/schemas/DatasetFieldServiceBean'
        self:
          $ref: '#/components/schemas/IndexServiceBean'
        datasetVersionFilesServiceBean:
          $ref: '#/components/schemas/DatasetVersionFilesServiceBean'
        rootDataverseCached:
          $ref: '#/components/schemas/Dataverse'
        variableMetadataUtil:
          $ref: '#/components/schemas/VariableMetadataUtil'
        indexPermitWaitTimer:
          type: object
        indexTimer:
          type: object
    VarGroup:
      type: object
      properties:
        id:
          format: int64
          type: integer
        label:
          type: string
        fileMetadata:
          $ref: '#/components/schemas/FileMetadata'
        varsInGroup:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/DataVariable'
    DataverseFacet:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dataverse:
          $ref: '#/components/schemas/Dataverse'
        datasetFieldType:
          $ref: '#/components/schemas/DatasetFieldType'
        displayOrder:
          format: int32
          type: integer
    DownloadInfo:
      type: object
      properties:
        dataFile:
          $ref: '#/components/schemas/DataFile'
        authUserName:
          type: string
        authMethod:
          type: string
        accessGranted:
          type: boolean
        accessPermissionsApply:
          type: boolean
        accessRestrictionsApply:
          type: boolean
        passAccessPermissions:
          type: boolean
        passAccessRestrictions:
          type: boolean
        optionalServicesAvailable:
          type: array
          items:
            $ref: '#/components/schemas/OptionalAccessService'
        accessRestrictionsAply:
          type: boolean
        mimeType:
          type: string
        dataFileId:
          format: int64
          type: integer
        fileName:
          type: string
        servicesAvailable:
          type: array
          items:
            $ref: '#/components/schemas/OptionalAccessService'
    Type1:
      enum:
      - RETURN_TO_AUTHOR
      - WORKFLOW_SUCCESS
      - WORKFLOW_FAILURE
      type: string
    AuthenticationServiceBean:
      type: object
      properties:
        authProvidersRegistrationService:
          $ref: '#/components/schemas/AuthenticationProvidersRegistrationServiceBean'
        builtinUserServiceBean:
          $ref: '#/components/schemas/BuiltinUserServiceBean'
        indexService:
          $ref: '#/components/schemas/IndexServiceBean'
        actionLogSvc:
          $ref: '#/components/schemas/ActionLogServiceBean'
        userNotificationService:
          $ref: '#/components/schemas/UserNotificationServiceBean'
        confirmEmailService:
          $ref: '#/components/schemas/ConfirmEmailServiceBean'
        passwordResetServiceBean:
          $ref: '#/components/schemas/PasswordResetServiceBean'
        userService:
          $ref: '#/components/schemas/UserServiceBean'
        passwordValidatorService:
          $ref: '#/components/schemas/PasswordValidatorServiceBean'
        dvObjSvc:
          $ref: '#/components/schemas/DvObjectServiceBean'
        roleAssigneeSvc:
          $ref: '#/components/schemas/RoleAssigneeServiceBean'
        gbRespSvc:
          $ref: '#/components/schemas/GuestbookResponseServiceBean'
        datasetVersionService:
          $ref: '#/components/schemas/DatasetVersionServiceBean'
        explicitGroupService:
          $ref: '#/components/schemas/ExplicitGroupServiceBean'
        savedSearchService:
          $ref: '#/components/schemas/SavedSearchServiceBean'
        privateUrlService:
          $ref: '#/components/schemas/PrivateUrlServiceBean'
        em:
          type: object
        oAuth2Providers:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/AbstractOAuth2AuthenticationProvider'
        authenticationProviderIds:
          uniqueItems: true
          type: array
          items:
            type: string
        authenticationProviders:
          type: array
          items:
            $ref: '#/components/schemas/AuthenticationProvider'
        orcidEnabled:
          type: boolean
        adminUser:
          $ref: '#/components/schemas/AuthenticatedUser'
        currentTimestamp:
          type: object
        availableOidcProviders:
          type: array
          items:
            $ref: '#/components/schemas/OIDCAuthProvider'
        orcidAuthenticationProvider:
          $ref: '#/components/schemas/OrcidOAuth2AP'
    BannerMessageServiceBean:
      type: object
      properties:
        em:
          type: object
    IngestReport:
      type: object
      properties:
        id:
          format: int64
          type: integer
        dataFile:
          $ref: '#/components/schemas/DataFile'
        report:
          type: string
        type:
          format: int32
          type: integer
        status:
          format: int32
          type: integer
        startTime:
          format: date
          type: string
          example: 2022-03-10
        endTime:
          format: date
          type: string
          example: 2022-03-10
        failure:
          type: boolean
    IndexAsync:
      type: object
      properties:
        solrIndexService:
          $ref: '#/components/schemas/SolrIndexServiceBean'
    CustomQuestion:
      required:
      - questionString
      type: object
      properties:
        id:
          format: int64
          type: integer
        guestbook:
          $ref: '#/components/schemas/Guestbook'
        customQuestionResponses:
          type: array
          items:
            $ref: '#/components/schemas/CustomQuestionResponse'
        customQuestionValues:
          type: array
          items:
            $ref: '#/components/schemas/CustomQuestionValue'
        questionType:
          type: string
        questionString:
          pattern: \S
          type: string
        required:
          type: boolean
        hidden:
          type: boolean
        displayOrder:
          format: int32
          type: integer
        customQuestionOptions:
          type: array
          items:
            type: string
        customQuestionValueString:
          type: string
    Metric:
      type: object
      properties:
        id:
          format: int32
          type: integer
        name:
          type: string
        valueJson:
          type: string
        dataLocation:
          type: string
        dayString:
        

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