Skip to content
Snippets Groups Projects

feat: Fix issues with OpenAPI spec

1 file
+ 66
66
Compare changes
  • Side-by-side
  • Inline
+ 66
66
openapi: '3.1.0'
openapi: "3.1.0"
info:
version: 1.0.0
title: Working Groups API
@@ -8,40 +8,40 @@ info:
url: https://www.eclipse.org/legal/epl-2.0/
servers:
- url: https://membership.eclipse.org/api
description: Production endpoint for the membership portal data
- url: https://api.eclipse.org/working-groups
description: Production endpoint for Eclipse Foundation working group data
paths:
/working-groups:
"":
parameters:
- name: status
in: query
schema:
type: string
description: The project status
get:
tags:
- Working Groups
- Working Groups
summary: Working Group List
description: Returns a list of working groups that have the desired status
parameters:
- name: status
in: query
schema:
type: string
description: The project status
responses:
200:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroups'
$ref: "#/components/schemas/WorkingGroups"
500:
description: Error while retrieving data
/working-groups/{alias}:
/{alias}:
parameters:
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
get:
summary: Working Group
description: Returns a working group entry that has a matching alias
@@ -51,20 +51,20 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroup'
$ref: "#/components/schemas/WorkingGroup"
404:
description: Not Found
500:
description: Error while retrieving data
/working-groups/{alias}/resources:
/{alias}/resources:
parameters:
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
get:
summary: Working Group resources
description: Returns the resources info for the WG with the specified alias
@@ -74,20 +74,20 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroupResources'
$ref: "#/components/schemas/WorkingGroupResources"
404:
description: Not Found
500:
description: Error while retrieving data
description: Error while retrieving data
/working-groups/{alias}/levels:
/{alias}/levels:
parameters:
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
get:
summary: Working Group levels
description: Returns the levels info for the WG with the specified alias
@@ -97,20 +97,20 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroupLevels'
$ref: "#/components/schemas/WorkingGroupLevels"
404:
description: Not Found
500:
description: Error while retrieving data
/working-groups/{alias}/agreements:
/{alias}/agreements:
parameters:
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
- name: alias
in: path
description: The name of the working group to retrieve
required: true
schema:
type: string
get:
summary: Working Group agreements
description: Returns the participation agreements info for the WG with the specified alias
@@ -120,7 +120,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroupParticipationAgreements'
$ref: "#/components/schemas/WorkingGroupParticipationAgreements"
404:
description: Not Found
500:
@@ -131,26 +131,26 @@ components:
openId:
type: openIdConnect
openIdConnectUrl: https://auth.eclipse.org/auth/realms/foundation/.well-known/openid-configuration
schemas:
ObjectID:
description: Unique identifier for an addressable object in the API. Can be null when posting or updating objects in the API if part of the root element or is a new entity. Should always be set in responses.
type:
type:
- string
- 'null'
- "null"
minimum: 1
WorkingGroups:
type: array
items:
$ref: '#/components/schemas/WorkingGroup'
$ref: "#/components/schemas/WorkingGroup"
WorkingGroup:
type: object
properties:
alias:
type: string
description: internal alias for the working group
description: internal alias for the working group
title:
type: string
description: Public-facing or official name of the working group
@@ -164,10 +164,10 @@ components:
type: string
description: Short description of the working group
resources:
$ref: '#/components/schemas/WorkingGroupResources'
$ref: "#/components/schemas/WorkingGroupResources"
levels:
$ref: '#/components/schemas/WorkingGroupLevels'
$ref: "#/components/schemas/WorkingGroupLevels"
WorkingGroupResources:
type: object
properties:
@@ -181,38 +181,38 @@ components:
type: string
description: URL to the members list for the given working group
participation_agreements:
$ref: '#/components/schemas/WorkingGroupParticipationAgreements'
$ref: "#/components/schemas/WorkingGroupParticipationAgreements"
sponsorship:
type: string
description: link to the sponsorship agreement document
website:
type: string
description: the URL for the homepage of this working group
WorkingGroupParticipationAgreements:
type: object
properties:
individual:
$ref: '#/components/schemas/WorkingGroupParticipationAgreement'
$ref: "#/components/schemas/WorkingGroupParticipationAgreement"
organization:
$ref: '#/components/schemas/WorkingGroupParticipationAgreement'
$ref: "#/components/schemas/WorkingGroupParticipationAgreement"
WorkingGroupParticipationAgreement:
type:
type:
- object
- 'null'
- "null"
properties:
document_id:
$ref: '#/components/schemas/ObjectID'
$ref: "#/components/schemas/ObjectID"
pdf:
type: string
description: Link to the PDF version of the participation agreement
WorkingGroupLevels:
type: array
items:
$ref: '#/components/schemas/WorkingGroupLevel'
$ref: "#/components/schemas/WorkingGroupLevel"
WorkingGroupLevel:
type: object
description: Definition of the participation level for the working group, including its relation code
Loading