Skip to content
Snippets Groups Projects

feat: Add mising components to OpenAPI spec

1 unresolved thread
+ 66
43
openapi: '3.1.0'
openapi: "3.1.0"
info:
version: 1.0.0
title: Eclipse Foundation Mailing List API
@@ -6,16 +6,24 @@ info:
name: Eclipse Public License - 2.0
url: https://www.eclipse.org/legal/epl-2.0/
servers:
- url: https://api.eclipse.org/foundation
description: Production endpoint for the membership portal data
- url: https://api.eclipse.org/foundation/mailing_lists
description: Production endpoint for the membership portal data
tags:
- name: Mailing Lists
description: Definitions in relation to retrieval of mailing lists
- name: Mailing Lists
description: Definitions in relation to retrieval of mailing lists
paths:
/mailing-lists:
"":
parameters:
- name: username
in: query
description: The user id
required: true
schema:
type: string
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Mailing Lists
description: Returns a list of organizations from the Eclipse API
responses:
@@ -24,13 +32,16 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingLists'
$ref: "#/components/schemas/MailingLists"
404:
description: Not found
500:
description: Error while retrieving data
/mailing-lists/available:
/available:
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Available Mailing Lists
description: Returns a list of mailing lists available for subscription
responses:
@@ -39,20 +50,21 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingLists'
$ref: "#/components/schemas/MailingLists"
500:
description: Error while retrieving data
/mailing-lists/{listName}:
/{listName}:
parameters:
- name: listName
in: path
description: The name of the mailing list to retrieve
required: true
schema:
type: string
- name: listName
in: path
description: The name of the mailing list to retrieve
required: true
schema:
type: string
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Mailing List
description: Returns a list of organizations from the Eclipse API
responses:
@@ -61,13 +73,16 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingList'
$ref: "#/components/schemas/MailingList"
404:
description: Not found
500:
description: Error while retrieving data
/mailing-lists/projects:
/projects:
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Projects Mailing Lists
description: Returns a list of mailing lists mapped to project IDs
responses:
@@ -76,13 +91,14 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingListMapping'
$ref: "#/components/schemas/MailingListMapping"
500:
description: Error while retrieving data
/mailing-lists/projects/available:
/projects/available:
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Available Projects Mailing Lists
description: Returns a list of mailing lists available for subscription mapped to project IDs
responses:
@@ -91,20 +107,21 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingListMapping'
$ref: "#/components/schemas/MailingListMapping"
500:
description: Error while retrieving data
/mailing-lists/projects/{projectID}:
/projects/{projectID}:
parameters:
- name: projectID
in: path
description: The ID of the project to retrieve mailing lists for
required: true
schema:
type: string
- name: projectID
in: path
description: The ID of the project to retrieve mailing lists for
required: true
schema:
type: string
get:
tags:
- Mailing Lists
- Mailing Lists
summary: Project Mailing Lists
description: Returns a list of organizations from the Eclipse API
responses:
@@ -113,20 +130,23 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/MailingLists'
$ref: "#/components/schemas/MailingLists"
500:
description: Error while retrieving data
components:
securitySchemes:
openId:
type: openIdConnect
openIdConnectUrl: https://auth.eclipse.org/auth/realms/foundation/.well-known/openid-configuration
schemas:
NullableString:
description: A nullable String type value
type:
- 'null'
- "null"
- string
DateTime:
type: string
format: datetime
@@ -134,10 +154,12 @@ components:
Date string in the RFC 3339 format. Example, `1990-12-31T15:59:60-08:00`.
More on this standard can be read at https://tools.ietf.org/html/rfc3339.
MailingLists:
type: array
items:
$ref: '#/components/schemas/MailingList'
$ref: "#/components/schemas/MailingList"
MailingList:
type: object
properties:
@@ -145,13 +167,13 @@ components:
type: string
description: placeholder
list_description:
$ref: '#/components/schemas/NullableString'
$ref: "#/components/schemas/NullableString"
description: placeholder
project_id:
type: string
description: placeholder
list_short_description:
$ref: '#/components/schemas/NullableString'
$ref: "#/components/schemas/NullableString"
description: placeholder
create_archives:
type: boolean
@@ -172,20 +194,21 @@ components:
type: boolean
description: placeholder
create_date:
$ref: '#/components/schemas/DateTime'
$ref: "#/components/schemas/DateTime"
created_by:
$ref: '#/components/schemas/NullableString'
$ref: "#/components/schemas/NullableString"
description: placeholder
provision_status:
$ref: '#/components/schemas/NullableString'
$ref: "#/components/schemas/NullableString"
description: placeholder
count:
type: integer
description: The number of subscribers for the given list. Only included on singular calls.
MailingListMapping:
type: object
propertyNames:
pattern: "^\\d+$"
description: Project IDs the mailing lists are mapped to
additionalProperties:
$ref: '#/components/schemas/MailingLists'
$ref: "#/components/schemas/MailingLists"
Loading