Skip to content

Commit dad6e33

Browse files
committed
Fix ai-openapi.yaml max desc length (300)
Signed-off-by: Mike Ralphson <[email protected]>
1 parent 71b40a1 commit dad6e33

File tree

3 files changed

+330
-1
lines changed

3 files changed

+330
-1
lines changed

.eleventy.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ module.exports = function(eleventyConfig) {
88
eleventyConfig.addPassthroughCopy("src/.nojekyll");
99
eleventyConfig.addPassthroughCopy("src/robots.txt");
1010
eleventyConfig.addPassthroughCopy("src/.well-known/ai-plugin.json");
11+
eleventyConfig.addPassthroughCopy("src/.well-known/ai-openapi.yaml");
1112
eleventyConfig.addPassthroughCopy("src/apis/*");
1213
return {
1314
dir: {

src/.well-known/ai-openapi.yaml

Lines changed: 328 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,328 @@
1+
openapi: 3.0.0
2+
x-optic-url: https://app.useoptic.com/organizations/febf8ac6-ee67-4565-b45a-5c85a469dca7/apis/_0fKWqUvhs9ssYNkq1k-c
3+
x-optic-standard: "@febf8ac6-ee67-4565-b45a-5c85a469dca7/Fz6KU3_wMIO5iJ6_VUZ30"
4+
info:
5+
version: 2.2.0
6+
title: APIs.guru
7+
description: >
8+
Wikipedia for Web APIs. Repository of API definitions in OpenAPI format.
9+
10+
**Warning**: If you want to be notified about changes in advance please join our [Slack channel](https://join.slack.com/t/mermade/shared_invite/zt-g78g7xir-MLE_CTCcXCdfJfG3CJe9qA).
11+
12+
Client sample: [[Demo]](https://apis.guru/simple-ui) [[Repo]](https://github.com/APIs-guru/simple-ui)
13+
contact:
14+
name: APIs.guru
15+
url: https://APIs.guru
16+
17+
license:
18+
name: CC0 1.0
19+
url: https://github.com/APIs-guru/openapi-directory#licenses
20+
x-logo:
21+
url: https://apis.guru/branding/logo_vertical.svg
22+
externalDocs:
23+
url: https://github.com/APIs-guru/openapi-directory/blob/master/API.md
24+
servers:
25+
- url: https://api.apis.guru/v2
26+
security: []
27+
tags:
28+
- name: APIs
29+
description: Actions relating to APIs in the collection
30+
paths:
31+
/providers.json:
32+
get:
33+
operationId: getProviders
34+
tags:
35+
- APIs
36+
summary: List all providers
37+
description: |
38+
List all the providers in the directory
39+
responses:
40+
"200":
41+
description: OK
42+
content:
43+
application/json:
44+
schema:
45+
type: object
46+
properties:
47+
data:
48+
type: array
49+
items:
50+
type: string
51+
minLength: 1
52+
minItems: 1
53+
"/{provider}.json":
54+
get:
55+
operationId: getProvider
56+
tags:
57+
- APIs
58+
summary: List all APIs for a particular provider
59+
description: |
60+
List all APIs in the directory for a particular providerName
61+
Returns links to the individual API entry for each API.
62+
parameters:
63+
- $ref: "#/components/parameters/provider"
64+
responses:
65+
"200":
66+
description: OK
67+
content:
68+
application/json:
69+
schema:
70+
$ref: "#/components/schemas/APIs"
71+
"/{provider}/services.json":
72+
get:
73+
operationId: getServices
74+
tags:
75+
- APIs
76+
summary: List all serviceNames for a particular provider
77+
description: |
78+
List all serviceNames in the directory for a particular providerName
79+
parameters:
80+
- $ref: "#/components/parameters/provider"
81+
responses:
82+
"200":
83+
description: OK
84+
content:
85+
application/json:
86+
schema:
87+
type: object
88+
properties:
89+
data:
90+
type: array
91+
items:
92+
type: string
93+
minLength: 0
94+
minItems: 1
95+
"/specs/{provider}/{api}.json":
96+
get:
97+
operationId: getAPI
98+
tags:
99+
- APIs
100+
summary: Retrieve one version of a particular API
101+
description: Returns the API entry for one specific version of an API where
102+
there is no serviceName.
103+
parameters:
104+
- $ref: "#/components/parameters/provider"
105+
- $ref: "#/components/parameters/api"
106+
responses:
107+
"200":
108+
description: OK
109+
content:
110+
application/json:
111+
schema:
112+
$ref: "#/components/schemas/API"
113+
"/specs/{provider}/{service}/{api}.json":
114+
get:
115+
operationId: getServiceAPI
116+
tags:
117+
- APIs
118+
summary: Retrieve one version of a particular API with a serviceName.
119+
description: Returns the API entry for one specific version of an API where
120+
there is a serviceName.
121+
parameters:
122+
- $ref: "#/components/parameters/provider"
123+
- name: service
124+
in: path
125+
required: true
126+
schema:
127+
type: string
128+
minLength: 1
129+
maxLength: 255
130+
- $ref: "#/components/parameters/api"
131+
responses:
132+
"200":
133+
description: OK
134+
content:
135+
application/json:
136+
schema:
137+
$ref: "#/components/schemas/API"
138+
/list.json:
139+
get:
140+
operationId: listAPIs
141+
tags:
142+
- APIs
143+
summary: List all APIs
144+
description: >
145+
List all APIs in the directory.
146+
147+
Returns links to the OpenAPI definitions for each API in the directory.
148+
149+
If API exist in multiple versions `preferred` one is explicitly marked.
150+
responses:
151+
"200":
152+
description: OK
153+
content:
154+
application/json:
155+
schema:
156+
$ref: "#/components/schemas/APIs"
157+
/metrics.json:
158+
get:
159+
operationId: getMetrics
160+
summary: Get basic metrics
161+
description: >
162+
Some basic metrics for the entire directory.
163+
164+
These counts hold the number of APIs in the directory and other metadata.
165+
tags:
166+
- APIs
167+
responses:
168+
"200":
169+
description: OK
170+
content:
171+
application/json:
172+
schema:
173+
$ref: "#/components/schemas/Metrics"
174+
components:
175+
schemas:
176+
APIs:
177+
description: |
178+
List of API details.
179+
It is a JSON object with API IDs(`<provider>[:<service>]`) as keys.
180+
type: object
181+
additionalProperties:
182+
$ref: "#/components/schemas/API"
183+
minProperties: 1
184+
API:
185+
description: Meta information about API
186+
type: object
187+
required:
188+
- added
189+
- preferred
190+
- versions
191+
properties:
192+
added:
193+
description: Timestamp when the API was first added to the directory
194+
type: string
195+
format: date-time
196+
preferred:
197+
description: Recommended version
198+
type: string
199+
versions:
200+
description: List of supported versions of the API
201+
type: object
202+
additionalProperties:
203+
$ref: "#/components/schemas/ApiVersion"
204+
minProperties: 1
205+
additionalProperties: false
206+
ApiVersion:
207+
type: object
208+
required:
209+
- added
210+
- updated
211+
- swaggerUrl
212+
- swaggerYamlUrl
213+
- info
214+
- openapiVer
215+
properties:
216+
added:
217+
description: Timestamp when the version was added
218+
type: string
219+
format: date-time
220+
updated:
221+
description: Timestamp when the version was updated
222+
type: string
223+
format: date-time
224+
swaggerUrl:
225+
description: URL to OpenAPI definition in JSON format
226+
type: string
227+
format: url
228+
swaggerYamlUrl:
229+
description: URL to OpenAPI definition in YAML format
230+
type: string
231+
format: url
232+
link:
233+
description: Link to the individual API entry for this API
234+
type: string
235+
format: url
236+
info:
237+
description: Copy of `info` section from OpenAPI definition
238+
type: object
239+
minProperties: 1
240+
externalDocs:
241+
description: Copy of `externalDocs` section from OpenAPI definition
242+
type: object
243+
minProperties: 1
244+
openapiVer:
245+
description: The value of the `openapi` or `swagger` property of the source
246+
definition
247+
type: string
248+
additionalProperties: false
249+
Metrics:
250+
description: List of basic metrics
251+
type: object
252+
required:
253+
- numSpecs
254+
- numAPIs
255+
- numEndpoints
256+
properties:
257+
numSpecs:
258+
description: Number of API definitions including different versions of the same
259+
API
260+
type: integer
261+
minimum: 1
262+
numAPIs:
263+
description: Number of unique APIs
264+
type: integer
265+
minimum: 1
266+
numEndpoints:
267+
description: Total number of endpoints inside all definitions
268+
type: integer
269+
minimum: 1
270+
unreachable:
271+
description: Number of unreachable (4XX,5XX status) APIs
272+
type: integer
273+
invalid:
274+
description: Number of newly invalid APIs
275+
type: integer
276+
unofficial:
277+
description: Number of unofficial APIs
278+
type: integer
279+
fixes:
280+
description: Total number of fixes applied across all APIs
281+
type: integer
282+
fixedPct:
283+
description: Percentage of all APIs where auto fixes have been applied
284+
type: integer
285+
datasets:
286+
description: Data used for charting etc
287+
type: array
288+
items: {}
289+
stars:
290+
description: GitHub stars for our main repo
291+
type: integer
292+
issues:
293+
description: Open GitHub issues on our main repo
294+
type: integer
295+
thisWeek:
296+
description: Summary totals for the last 7 days
297+
type: object
298+
properties:
299+
added:
300+
description: APIs added in the last week
301+
type: integer
302+
updated:
303+
description: APIs updated in the last week
304+
type: integer
305+
numDrivers:
306+
description: Number of methods of API retrieval
307+
type: integer
308+
numProviders:
309+
description: Number of API providers in directory
310+
type: integer
311+
additionalProperties: false
312+
parameters:
313+
provider:
314+
name: provider
315+
in: path
316+
required: true
317+
schema:
318+
type: string
319+
minLength: 1
320+
maxLength: 255
321+
api:
322+
name: api
323+
in: path
324+
required: true
325+
schema:
326+
type: string
327+
minLength: 1
328+
maxLength: 255

src/.well-known/ai-plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
},
1010
"api": {
1111
"type": "openapi",
12-
"url": "https://api.apis.guru/v2/ai-openapi.yaml",
12+
"url": "https://apis.guru/.well-known/ai-openapi.yaml",
1313
"is_user_authenticated": false
1414
},
1515
"logo_url": "https://api.apis.guru/logo.svg",

0 commit comments

Comments
 (0)