4Paradigm · OpenAPI Overlay 1.0.0

API Evangelist enhancements — Pineapple

20 actions 20 updates documentation extends 4paradigm-openaios-platform.yaml
Generated by API Evangelist Written by API Evangelist tooling for 4Paradigm's API. It is a proposal applied on top of the contract, not a document 4Paradigm publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

operationIdx-api-evangelist-operation-idlicensecontactx-api-evangelist-sourcedescription

Targets 20 · first 16 shown; the file carries all of them

$.info
$.servers[0]
$.paths['/user/tasks'].get
$.paths['/user/init'].post
$.paths['/images/importing'].post
$.paths['/images/importing'].delete
$.paths['/images/importing'].put
$.paths['/images/registry'].get
$.paths['/public_images/info'].get
$.paths['/public_images'].get
$.paths['/images/info'].get
$.paths['/images'].get
$.paths['/images'].put
$.paths['/images'].delete
$.paths['/competition'].get
$.paths['/competition/{competitionID}'].post

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements — Pineapple
  version: 1.0.0
extends: 4paradigm-openaios-platform.yaml
x-generated: '2026-09-05'
x-method: generated
x-source: generated by the API Evangelist enrichment pipeline against the verbatim spec in openapi/_original/;
  adds only licence/source provenance and derived operationIds — no operation, parameter or schema is
  invented
actions:
- target: $.info
  description: Record the upstream licence and source, which the published spec omits.
  update:
    license:
      name: Apache-2.0
      url: https://github.com/4paradigm/openaios-platform/blob/master/LICENSE
    contact:
      name: 4Paradigm Open Source Community
      url: https://github.com/4paradigm/openaios-platform
    x-api-evangelist-source: https://github.com/4paradigm/openaios-platform/blob/master/doc/api/main.yaml
- target: $.servers[0]
  description: The published server is a loopback address because OpenAIOS-Platform is self-hosted on
    the operator's own Kubernetes cluster; it is correct, not a placeholder.
  update:
    description: Self-hosted. Replace the loopback host with the address of your own OpenAIOS-Platform
      deployment; the port and path prefix are the component's shipped defaults.
- target: $.paths['/user/tasks'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getUserTasks
    x-api-evangelist-operation-id: derived
- target: $.paths['/user/init'].post
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: postUserInit
    x-api-evangelist-operation-id: derived
- target: $.paths['/images/importing'].post
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: postImagesImporting
    x-api-evangelist-operation-id: derived
- target: $.paths['/images/importing'].delete
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: deleteImagesImporting
    x-api-evangelist-operation-id: derived
- target: $.paths['/images/importing'].put
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: putImagesImporting
    x-api-evangelist-operation-id: derived
- target: $.paths['/images/registry'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getImagesRegistry
    x-api-evangelist-operation-id: derived
- target: $.paths['/public_images/info'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getPublicImagesInfo
    x-api-evangelist-operation-id: derived
- target: $.paths['/public_images'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getPublicImages
    x-api-evangelist-operation-id: derived
- target: $.paths['/images/info'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getImagesInfo
    x-api-evangelist-operation-id: derived
- target: $.paths['/images'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getImages
    x-api-evangelist-operation-id: derived
- target: $.paths['/images'].put
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: putImages
    x-api-evangelist-operation-id: derived
- target: $.paths['/images'].delete
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: deleteImages
    x-api-evangelist-operation-id: derived
- target: $.paths['/competition'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getCompetition
    x-api-evangelist-operation-id: derived
- target: $.paths['/competition/{competitionID}'].post
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: postCompetitionByCompetitionid
    x-api-evangelist-operation-id: derived
- target: $.paths['/competition/{competitionID}'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getCompetitionByCompetitionid
    x-api-evangelist-operation-id: derived
- target: $.paths['/competition/{competitionID}/invitation'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getCompetitionByCompetitionidInvitation
    x-api-evangelist-operation-id: derived
- target: $.paths['/storage/upload'].post
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: postStorageUpload
    x-api-evangelist-operation-id: derived
- target: $.paths['/storage/download'].get
  description: Add a derived operationId; the published operation has none, which makes it unaddressable
    by code generators and by agents.
  update:
    operationId: getStorageDownload
    x-api-evangelist-operation-id: derived