Skip to content

OpenAPI 3.1 Support #3758

@gobijan

Description

@gobijan

Hi I think Goa would profit from OpenAPI 3.1 support.

Therefore I create this PR initially implementing it: #3755

This issue is to discuss it in a more formal way so we can shape and refine it till it is mergeable (if desired ofc).

I tried to do it in a way that:

  • Respects Goa's existing patterns and conventions
  • Provides a clean, intuitive API for developers
  • Properly leverages OpenAPI 3.1's webhook support
  • Maintains backward compatibility (webhooks are additive, not breaking)
	API                 Service          Type            ResultType
	├── Title           ├── Description  ├── Extend      ├── TypeName
	├── Description     ├── Docs         ├── Reference   ├── ContentType
	├── Version         ├── Security     ├── ConvertTo   ├── Extend
	├── Docs            ├── Error        ├── CreateFrom  ├── Reference
	├── License         ├── GRPC         ├── Attribute   ├── ConvertTo
	├── TermsOfService  ├── HTTP         ├── Field       ├── CreateFrom
	├── Contact         ├── Method       └── Required    ├── Attributes
	├── Server          │   ├── Payload                  └── View
	└── HTTP            │   ├── Result
	                    │   ├── Error
	                    │   ├── GRPC
	                    │   └── HTTP
	                    ├── Files
	                    └── Webhook
	                        ├── WebhookDescription
	                        ├── WebhookPayload
	                        └── WebhookHTTP
	                            ├── WebhookMethod/POST/GET/etc.
	                            ├── WebhookPath
	                            ├── WebhookHeaders
	                            └── WebhookResponse

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions