openapi: 3.0.0 info: title: REST activities prefixes API description: The REST API is used for all API interactions with DataCite services. contact: name: DataCite Support url: https://support.datacite.org email: support@datacite.org license: name: MIT url: https://raw.githubusercontent.com/datacite/lupo/master/LICENSE version: 2.3.0 servers: - url: https://api.test.datacite.org description: Staging server - url: https://api.datacite.org description: Production server security: - {} - BasicAuth: [] - bearerAuth: [] tags: - name: prefixes description: Prefixes paths: /prefixes: get: tags: - prefixes summary: Return a list of prefixes. security: [] parameters: - in: query name: year schema: type: integer - in: query name: state schema: type: string enum: - with-repository - without-repository - unassigned responses: '200': description: A JSON array of prefixes. content: application/vnd.api+json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Prefix' meta: allOf: - $ref: '#/components/schemas/MetaCore' - type: object properties: years: allOf: - $ref: '#/components/schemas/MetaArray' states: allOf: - $ref: '#/components/schemas/MetaArray' providers: type: array clients: type: array links: allOf: - $ref: '#/components/schemas/Links' /prefixes/totals: get: tags: - prefixes summary: Return prefixes DOI production statistics. parameters: - in: query $ref: '#/components/parameters/clientIdParam' responses: '200': description: A JSON array of prefixes stats. '204': description: No content; must include the client-id parameter. /prefixes/{id}: get: tags: - prefixes summary: Return a prefix. security: [] parameters: - name: id in: path description: Prefix required: true schema: type: string responses: '200': description: Return a prefix. content: application/vnd.api+json: schema: $ref: '#/components/schemas/Prefix' components: schemas: MetaObject: type: object properties: id: type: string type: type: string count: type: number Prefix: type: object properties: id: type: string type: type: string enum: - prefixes attributes: type: object properties: prefix: type: string createdAt: type: string relationships: type: object properties: clients: type: object properties: data: $ref: '#/components/schemas/DataArray' providers: type: object properties: data: $ref: '#/components/schemas/DataArray' clientPrefixes: type: object properties: data: $ref: '#/components/schemas/DataArray' providerPrefixes: type: object properties: data: $ref: '#/components/schemas/DataArray' required: - prefix Links: type: object properties: self: type: string next: type: string MetaArray: type: array items: $ref: '#/components/schemas/MetaObject' MetaCore: type: object properties: total: description: Total results count. type: number totalPages: description: Total pages count. type: number page: description: Current page of the results. type: number DataArray: type: array items: $ref: '#/components/schemas/DataObject' DataObject: type: object properties: id: type: string type: type: string parameters: clientIdParam: name: client-id in: query description: Filter by a specific DataCite client (repository). Use commas to include multiple repositories. schema: type: string example: datacite.blog securitySchemes: BasicAuth: type: http scheme: basic bearerAuth: type: http scheme: bearer bearerFormat: JWT