Newer
Older
web-services / data-wrapper / v1 / istex-tar-gz.ini
# Entrypoint output format
mimeType = application/x-tar
extension = tar.gz

# OpenAPI Documentation - JSON format (dot notation)
post.operationId = post-v1-tar-gz
post.description = Transformation d'un fichier ISTEX (format tar.gz) en fichier corpus
post.summary = Le fichier est transformé en fichier corpus exploitable par un web service asynchrone
post.tags.0 = data-wrapper
post.requestBody.content.application/x-tar.schema.type = string
post.requestBody.content.application/x-tar.schema.format = binary
post.requestBody.required = true
post.responses.default.description = Fichier corpus au format tar.gz
post.responses.default.content.application/x-tar.schema.type = string
post.responses.default.content.application/x-tar.schema.format = binary
post.parameters.0.description = Nom du champ à exploiter contenant l'identifiant
post.parameters.0.in = query
post.parameters.0.name = id
post.parameters.0.schema.type = string
post.parameters.0.schema.default = ark.0
post.parameters.0.required = false
post.parameters.1.description = Nom du champ à exploiter contenant la valeur
post.parameters.1.in = query
post.parameters.1.name = value
post.parameters.1.schema.type = string
post.parameters.1.schema.default = abstract
post.parameters.1.required = false
post.parameters.2.description = chaque objet est réduit à un object contenant 2 champs (id, value)
post.parameters.2.in = query
post.parameters.2.name = slim
post.parameters.2.schema.type = boolean
post.parameters.2.schema.default = true
post.parameters.2.required = false

[env]
path = slim
value = env('slim').thru(x => (x === 'false' ? false : true))

[use]
plugin = basics

[TARExtract]
compress = true
path = */*.json

[assign]
path = id
value = get(env('id', 'ark.0'))

path = value
value = get(env('value', 'abstract'))

[exchange]
value = self().thru(x => _.env(null, 'slim') ? _.pick(x, ['id', 'value']) : x)

[TARDump]
compress = true
manifest = fix({version: '1'})
manifest = fix({generator: 'v1/istex-tar-gz'})
manifest = fix({parameters: _.omit(_.env(), 'headers')})
manifest = fix({hostAgent: _.get(_.env(), 'headers.host')})
manifest = fix({userAgent: _.get(_.env(), 'headers.user-agent')})