Eclipse Working Groups API

REST API for Eclipse working groups and special interest groups — participation levels, resources, participation agreements and committee membership.

Operations 10

GET /organizations/{organizationID}/working_group/representatives Organization Working Group representatives #
GET /working_groups Working Group List #
GET /working_groups/{documentID} Working Group #
GET / Working Group List #
GET /{alias} Working Group #
GET /{alias}/resources Working Group resources #
GET /{alias}/levels Working Group levels #
GET /{alias}/agreements Working Group agreements #
GET /{alias}/committees/{relationType} Working Group Committee #
GET /organization/{id} Working Group by Organization ID #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/working-groups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

eclipse-working-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Eclipse Working Groups API
  version: 1.0.0
  license:
    name: Eclipse Public License - 2.0
    url: https://www.eclipse.org/legal/epl-2.0/
  description: 'Operations tagged Working Groups across 2 of this provider''s published API definitions: eclipse-membership-portal-api-openapi.json, eclipse-working-groups-api-openapi.json. Each path carries the servers of the definition it was published in.'
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
tags:
- name: Working Groups
  description: Definitions related to Eclipse Foundation working group entities
paths:
  /organizations/{organizationID}/working_group/representatives:
    parameters:
    - name: organizationID
      in: path
      description: The organization ID for the organization to retrieve representatives for
      required: true
      schema:
        type: number
    get:
      tags:
      - Working Groups
      summary: Organization Working Group representatives
      description: Gets working group representatives grouped by the alias of the Working Group they are part of
      operationId: getOrganizationWorkingGroupRepresentatives
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationWorkingGroupRepresentatives'
        '404':
          description: No organization found
        '500':
          description: Error while retrieving data
    servers:
    - url: https://membership.eclipse.org/api
      description: Production endpoint for the membership portal data
  /working_groups:
    get:
      deprecated: true
      tags:
      - Working Groups
      summary: Working Group List
      description: Returns a working group entry that has a matching ID
      operationId: getWorkingGroups
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroups'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://membership.eclipse.org/api
      description: Production endpoint for the membership portal data
  /working_groups/{documentID}:
    parameters:
    - name: documentID
      in: path
      description: The document ID for the working group to retrieve
      required: true
      schema:
        $ref: '#/components/schemas/ObjectID'
    get:
      deprecated: true
      tags:
      - Working Groups
      summary: Working Group
      description: Returns a working group entry that has a matching ID
      operationId: getWorkingGroup
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroup'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://membership.eclipse.org/api
      description: Production endpoint for the membership portal data
  /:
    parameters:
    - name: status
      in: query
      schema:
        type: string
        description: The project status
    get:
      tags:
      - Working Groups
      summary: Working Group List
      description: Returns a list of working groups that have the desired status
      operationId: getWorkingGroups
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroups'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /{alias}:
    parameters:
    - name: alias
      in: path
      description: The name of the working group to retrieve
      required: true
      schema:
        type: string
    get:
      tags:
      - Working Groups
      summary: Working Group
      description: Returns a working group entry that has a matching alias
      operationId: getWorkingGroupByAlias
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroup_2'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /{alias}/resources:
    parameters:
    - name: alias
      in: path
      description: The name of the working group to retrieve
      required: true
      schema:
        type: string
    get:
      tags:
      - Working Groups
      summary: Working Group resources
      description: Returns the resources info for the WG with the specified alias
      operationId: getWorkingGroupResourcesByAlias
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroupResources'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /{alias}/levels:
    parameters:
    - name: alias
      in: path
      description: The name of the working group to retrieve
      required: true
      schema:
        type: string
    get:
      tags:
      - Working Groups
      summary: Working Group levels
      description: Returns the levels info for the WG with the specified alias
      operationId: getWorkingGroupLevelsByAlias
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroupLevels'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /{alias}/agreements:
    parameters:
    - name: alias
      in: path
      description: The name of the working group to retrieve
      required: true
      schema:
        type: string
    get:
      tags:
      - Working Groups
      summary: Working Group agreements
      description: Returns the participation agreements info for the WG with the specified alias
      operationId: getWorkingGroupParticipationAgreementsByAlias
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroupParticipationAgreements'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /{alias}/committees/{relationType}:
    parameters:
    - name: alias
      in: path
      description: The name of the working group to retrieve
      required: true
      schema:
        type: string
    - name: relationType
      in: path
      description: The prefix of the WG committee relation codes
      required: true
      schema:
        type: string
    get:
      tags:
      - Working Groups
      summary: Working Group Committee
      description: Returns the WG Committee info for the WG with the specified alias and group prefix
      operationId: getWorkingGroupCommitteesByCommitteePrefix
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroupCommittee'
        '400':
          description: Invalid alias or relation type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
  /organization/{id}:
    parameters:
    - name: id
      in: path
      description: The ID of the organization to retrieve working groups for
      required: true
      schema:
        type: integer
    get:
      tags:
      - Working Groups
      summary: Working Group by Organization ID
      description: Returns working groups that the target organization is a member of
      operationId: getWorkingGroupsByOrganizationId
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkingGroups'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Error while retrieving data
    servers:
    - url: https://api.eclipse.org/working-groups
      description: Production endpoint for Eclipse Foundation working group data
components:
  schemas:
    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:
          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:
                  anyOf:
                  - type: 'null'
                  - $ref: '#/components/schemas/WorkingGroupParticipationAgreement'
                organization:
                  anyOf:
                  - type: 'null'
                  - $ref: '#/components/schemas/WorkingGroupParticipationAgreement'
                sponsorship:
                  type: string
                  description: link to the sponsorship agreement document
                sponsorship_document:
                  type:
                  - string
                  - 'null'
                  description: Sponsorship agreement document in Foundation for formalized sponsorship
            website:
              type: string
              description: the URL for the homepage of this working group
        levels:
          type: array
          items:
            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
    BasicPersonData:
      type: object
      properties:
        id:
          type: string
          description: Description of the stored URL/product
        first_name:
          type: string
          description: First name of the user
        last_name:
          type: string
          description: Last name of the user
        relations:
          type: array
          description: list of relation codes that are active for the current user
          items:
            type: string
    WorkingGroupParticipationAgreement:
      type: object
      properties:
        document_id:
          $ref: '#/components/schemas/ObjectID'
        pdf:
          type: string
          description: Link to the PDF version of the participation agreement
    BasicPersons:
      type: array
      items:
        $ref: '#/components/schemas/BasicPersonData'
    OrganizationWorkingGroupRepresentatives:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/BasicPersons'
    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
    WorkingGroupCommittee:
      type: object
      additionalProperties: false
      required:
      - group_prefix
      - working_group
      description: Definition of the WG committee
      properties:
        group_prefix:
          type: string
          description: Prefix of the code representing the relation, used internally when using common relation types.
        working_group:
          type: string
          description: The WG alias.
        appointed_primary:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        appointed_alternate:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        elected_primary:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        elected_alternate:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        committer_representative:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        invited_guest:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        foundation_staff:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        pmc_representatives:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
        planning_council_representatives:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/CommitteeRole'
    MemberOrganizationLogos:
      type: object
      description: A member organization's logo data
      properties:
        print:
          type:
          - string
          - 'null'
          description: The print logo URL.
        web:
          type:
          - string
          - 'null'
          description: The web logo URL.
    CommitteeMember:
      type: object
      additionalProperties: false
      required:
      - name
      - username
      description: A committee member representative.
      properties:
        name:
          type: string
          description: The name of the representative.
        username:
          type: string
          description: The representative's EF username.
        organization:
          anyOf:
          - type: 'null'
          - $ref: '#/components/schemas/MemberOrganization'
    WorkingGroup_2:
      type: object
      additionalProperties: false
      required:
      - alias
      - title
      - status
      - logo
      - description
      - resources
      - levels
      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'
        committee_mailing_lists:
          oneOf:
          - $ref: '#/components/schemas/WorkingGroupMailingLists'
          - type: 'null'
    WorkingGroupMailingLists:
      additionalProperties:
        type: array
        items:
          type: string
    MemberOrganization:
      type: object
      additionalProperties: false
      required:
      - name
      - organization_id
      - logos
      - is_active_member
      description: A member representative's organization info.
      properties:
        name:
          type: string
          description: The organization name.
        organization_id:
          type: integer
          description: The organization id.
        logos:
          $ref: '#/components/schemas/MemberOrganizationLogos'
        is_active_member:
          type: boolean
          description: Whether the organization is an active member of the Eclipse Foundation.
    WorkingGroupLevel:
      type: object
      additionalProperties: false
      required:
      - relation
      - description
      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
    Error:
      type: object
      additionalProperties: false
      required:
      - status_code
      - message
      properties:
        status_code:
          type: integer
          description: HTTP response code
        message:
          type: string
          description: Message containing error information
        url:
          oneOf:
          - type: string
          - type: 'null'
          description: The URL
        friendly_message:
          oneOf:
          - type: string
          - type: 'null'
          description: The friendly message for the error
    WorkingGroupParticipationAgreement_2:
      type:
      - object
      - 'null'
      additionalProperties: false
      properties:
        document_id:
          $ref: '#/components/schemas/ObjectID'
        pdf:
          type: string
          description: Link to the PDF version of the participation agreement
    WorkingGroupParticipationAgreements:
      type: object
      additionalProperties: false
      properties:
        individual:
          $ref: '#/components/schemas/WorkingGroupParticipationAgreement_2'
        organization:
          $ref: '#/components/schemas/WorkingGroupParticipationAgreement_2'
    CommitteeRole:
      type: object
      additionalProperties: false
      required:
      - code
      - description
      - members
      description: The committee position.
      properties:
        code:
          type: string
          description: The code representing the relation. Used internally when using common relation types.
        description:
          type: string
          description: The relation description.
        members:
          type: array
          items:
            $ref: '#/components/schemas/CommitteeMember'
    WorkingGroupLevels:
      type: array
      items:
        $ref: '#/components/schemas/WorkingGroupLevel'
    WorkingGroupResources:
      type: object
      additionalProperties: false
      required:
      - charter
      - contact_form
      - members
      - participation_agreements
      - sponsorship
      - website
      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
        sponsorship_document:
          type:
          - string
          - 'null'
          description: The ID of the sponsorship document for this working group
        participation_agreements:
          $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
        sustainer_commitment:
          type:
          - string
          - 'null'
          description: the URL for the sustainer commitment for the working group, optional
        resource_display:
          description: 'List of resources to be displayed for this Working Group in relation to associated resources, including references

            to existing fields and custom fields. Will retain order of the list when displaying.

            '
          anyOf:
          - type: array
            items:
              type: object
              properties:
                label:
                  description: Label to override reference field, or when using custom links
                  type:
                  - string
                  - 'null'
                link:
                  description: Custom link to use when defining an item, required if not using a reference
                  type:
                  - string
                  - 'null'
                ref:
                  description: Defines one of the existing resources to be substituted in with their label and link.
                  type:
                  - string
                  - 'null'
          - type: 'null'
  securitySchemes:
    openId:
      type: openIdConnect
      openIdConnectUrl: https://auth.eclipse.org/auth/realms/foundation/.well-known/openid-configuration
x-refined-from:
- eclipse-membership-portal-api-openapi.json
- eclipse-working-groups-api-openapi.json