Newer
Older
web-services / biblio-tools / v1 / crossref / works / expand.ini
@Nicolas Thouvenin Nicolas Thouvenin on 4 Feb 1 KB feat: add new databases
# OpenAPI Documentation - JSON format (dot notation)
mimeType = application/json

post.operationId = post-v1-crossref-works-expand
post.description = Récupération des métadonnées associées à un DOI
post.summary = Récupération à partir d'un tableau d'objets avec à minima un champ value contenant le DOI
post.tags.0 = biblio-tools
post.requestBody.content.application/json.example.0.id = 1
post.requestBody.content.application/json.example.0.value = 10.4000/edc.9014
post.requestBody.content.application/json.schema.$ref = #/components/schemas/JSONStream
post.requestBody.required = true
post.responses.default.content.application/json.example.0.id = 1
post.responses.default.content.application/json.example.0.value = { ... }
post.responses.default.content.application/json.schema.$ref =  #/components/schemas/JSONStream
post.responses.default.description = Les prefixes DOI en version textuel
post.parameters.0.description = Indenter le JSON résultant
post.parameters.0.in = query
post.parameters.0.name = indent
post.parameters.0.schema.type = boolean


# Necessary plugins
[use]
plugin = basics
plugin = analytics
plugin = storage

# Flow configuration
[JSONParse]
legacy = false
separator = $

[bufferize]

[combine]
path = env('path', 'value')
primer = get('bufferID')
prepend = buffers
append = transit
persistent = true

[combine/exchange]
value = get('value')

[combine/group]
size = 100

[combine/replace]
path = rows
value = fix(self.length)
path = filter
value = self().map(x => 'doi:'.concat(x)).join(',')

# see https://github.com/CrossRef/rest-api-doc#api-overview
[combine/URLStream]
url  = https://api.crossref.org/works
path = .items.*
timeout = 30000

[combine/replace]
path = id
value = get('DOI')
path = value
value = self()

[dump]
indent = env('indent', false)