OpenAPI Specification
openapi: 3.0.3
info:
title: Zenodo REST Access Groups API
description: 'REST API for Zenodo, the free open research data repository operated by CERN and built on InvenioRDM. Provides programmatic access to deposits (draft records), published records, file management, communities, vocabularies, OAI-PMH sets, requests, users, groups, statistics, and audit logs. Every published record receives a DOI for persistent citation. Authenticate with a personal access token passed as a Bearer token.
'
version: 12.0.0
contact:
name: Zenodo Developer Documentation
url: https://developers.zenodo.org/
license:
name: MIT License
url: https://opensource.org/licenses/MIT
x-upstream-spec: https://github.com/inveniosoftware/invenio-openapi
servers:
- url: https://zenodo.org
description: Zenodo production instance
- url: https://sandbox.zenodo.org
description: Zenodo sandbox (testing)
security:
- BearerAuth: []
tags:
- name: Groups
description: Group management endpoints
paths:
/api/groups:
get:
summary: Search groups
tags:
- Groups
operationId: searchGroups
parameters:
- name: q
in: query
required: true
schema:
type: string
example: admin
responses:
'200':
$ref: '#/components/responses/Success'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
security:
- BearerAuth: []
/api/groups/{groupId}:
get:
summary: Get group by ID
tags:
- Groups
operationId: getGroupById
parameters:
- name: groupId
in: path
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/Success'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
security:
- BearerAuth: []
/api/groups/{groupId}/avatar.svg:
get:
summary: Get group avatar
tags:
- Groups
operationId: getGroupAvatar
parameters:
- name: groupId
in: path
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/Success'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
components:
responses:
Success:
description: Successful response
content:
application/json:
schema:
type: object
Unauthorized:
description: Unauthorized - authentication required
NotFound:
description: Not found - resource does not exist
Forbidden:
description: Forbidden - insufficient permissions
InternalServerError:
description: Internal server error
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: Personal access token issued from the Zenodo account settings