Skip to content
Snippets Groups Projects

Issue #3 - Import openapi spec, fix tests + generation

Merged Issue #3 - Import openapi spec, fix tests + generation
1 unresolved thread
Merged Martin Lowe requested to merge malowe/eclipsefdn-working-groups-api:malowe/main/3 into main
1 unresolved thread
7 files
+ 963
9
Compare changes
  • Side-by-side
  • Inline
Files
7
spec/openapi.yaml 0 → 100644
+ 132
0
openapi: '3.1.0'
info:
version: 1.0.0
title: Working Groups API
description: Access information on Eclipse Foundation Working Groups.
license:
name: Eclipse Public License - 2.0
url: https://www.eclipse.org/legal/epl-2.0/
servers:
- url: https://membership.eclipse.org/api
description: Production endpoint for the membership portal data
paths:
/working_groups:
get:
tags:
- Working Groups
summary: Working Group List
description: Returns a working group entry that has a matching ID
responses:
200:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroups'
500:
description: Error while retrieving data
/working_groups/{alias}:
parameters:
- 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
responses:
200:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/WorkingGroup'
500:
description: Error while retrieving data
components:
securitySchemes:
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:
- string
- 'null'
minimum: 1
WorkingGroups:
type: array
items:
$ref: '#/components/schemas/WorkingGroup'
WorkingGroup:
type: object
properties:
alias:
type: string
description: internal alias for the working group
title:
type: string
description: Public-facing or official name of the working group
status:
type: string
description: Current status of the working group (e.g. incubating, active, archived)
logo:
type: string
description: image link for the working groups logo
description:
type: string
description: Short description of the working group
resources:
$ref: '#/components/schemas/WorkingGroupResources'
levels:
$ref: '#/components/schemas/WorkingGroupLevels'
WorkingGroupResources:
type: object
properties:
charter:
type: string
description: Link to the charter for the current working group
contact_form:
type: string
description: URL link to the contact form
members:
type: string
description: URL to the members list for the given working group
participation_agreements:
type: object
properties:
individual:
$ref: '#/components/schemas/WorkingGroupParticipationAgreement'
organization:
$ref: '#/components/schemas/WorkingGroupParticipationAgreement'
sponsorship:
type: string
description: link to the sponsorship agreement document
website:
type: string
description: the URL for the homepage of this working group
WorkingGroupParticipationAgreement:
type: object
properties:
document_id:
$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'
WorkingGroupLevel:
type: object
description: Definition of the participation level for the working group, including its relation code
properties:
relation:
type: string
description: code representing the relation, used internally when using common relation types
description:
type: string
description: the label for the participation level
Loading