-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathapi_spec_oa3_v1.yml
181 lines (180 loc) · 5.26 KB
/
api_spec_oa3_v1.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
openapi: 3.0.1
info:
title: Publiccode Validator API
description: |-
This is a Go web interface validator for publiccode.yml files, it uses publiccode-parser-go.
`publiccode.yml` is an international standard for describing public software.
It is expected to be published in the root of open source repositories.
This parser performs syntactic and semantic validation according to the official spec.
termsOfService: https://github.com/italia/publiccode-validator
x-api-id: 501E5354-2F69-4F0B-9BFB-6AA530430E84
x-project: software
x-summary: Validate publiccode.yml files
contact:
name: Developers Italia
email: [email protected]
url: https://developers.italia.it
license:
name: BSD 3-Clause
url: https://github.com/italia/publiccode-validator/blob/master/LICENSE
version: 1.0.0
externalDocs:
description: Find out more about Developers Italia
url: https://developers.italia.it
servers:
- url: https://publiccode-validator.developers.italia.it/api/v1
description: production environment
tags:
- name: public
description: Everything about Publiccode
externalDocs:
description: Find out more
url: https://github.com/italia/publiccode.yml
paths:
/validateURL:
post:
description: Validate a publiccode file in yaml or json format.
tags:
- public
summary: Validate a PublicCode by URL
operationId: validateURL
parameters:
- name: url
in: query
schema:
type: string
default: false
example: false
description: |-
Remote URL which points to a publiccode.yml
responses:
'200':
description: |-
Validation Ok, return latest valid publiccode version
content:
application/json:
schema:
$ref: '#/components/schemas/Validation'
application/x-yaml:
schema:
$ref: '#/components/schemas/Validation'
'400':
description: Generic Error
content:
application/json:
schema:
$ref: '#/components/schemas/GenericError'
application/x-yaml:
schema:
$ref: '#/components/schemas/GenericError'
'422':
description: Validation failed
content:
application/json:
schema:
$ref: '#/components/schemas/Validation'
application/x-yaml:
schema:
$ref: '#/components/schemas/Validation'
/validate:
post:
tags:
- public
summary: Validate a PublicCode
operationId: validate
requestBody:
description: Publiccode object that needs to be validated
content:
application/json:
schema:
$ref: '#/components/schemas/PublicCode'
application/x-yaml:
schema:
$ref: '#/components/schemas/PublicCode'
required: true
parameters:
- name: disableNetwork
in: query
schema:
type: boolean
default: false
example: false
description: |-
By default this API resolves remote references and
validate the existence of asset files like logos and
screenshots.
responses:
'200':
description: |-
Validation Ok, return latest valid publiccode version
content:
application/json:
schema:
$ref: '#/components/schemas/Validation'
application/x-yaml:
schema:
$ref: '#/components/schemas/Validation'
'400':
description: Generic Error
content:
application/json:
schema:
$ref: '#/components/schemas/GenericError'
application/x-yaml:
schema:
$ref: '#/components/schemas/GenericError'
'422':
description: Validation failed
content:
application/json:
schema:
$ref: '#/components/schemas/Validation'
application/x-yaml:
schema:
$ref: '#/components/schemas/Validation'
components:
schemas:
GenericError:
properties:
error:
type: string
message:
type: string
status:
type: integer
format: int32
default: 400
required:
- error
- message
- status
ValidationError:
properties:
Key:
type: string
Reason:
type: string
required:
- Key
Validation:
properties:
status:
type: integer
format: int32
message:
type: string
error:
type: string
export:
$ref: '#/components/schemas/PublicCode'
validationErrors:
type: array
items:
$ref: '#/components/schemas/ValidationError'
required:
- status
- message
- error
- validationErrors
PublicCode:
$ref: https://raw.githubusercontent.com/italia/publiccode-editor/master/src/app/editor_generator_schema.json