OpenAPI specification
The OpenAPI specification defines a standard interface to RESTful APIs.
OpenAPI is a specification for building APIs. It is a standard, language-agnostic interface to RESTful APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection.
The OpenAPI definition files are avaiable in each API's reference page, where you can download them in either YAML or JSON format.

OpenAPI generator
OpenAPI Generator CLI is a code generator that can generate API client libraries from an OpenAPI 3.0 specification. It supports many languages and frameworks, including Java, C#, Python, JavaScript, TypeScript, Go, PHP, C++, and more.
Some examples of how to use it are shown below:
The API clients and JSON models are generated using openapi-generator-cli and the generated code is placed in the src/consumer/generated folder.
npx openapi-generator-cli generate -i ./src/consumer/SWIFT-API-Swift-Messaging-1.1.0-resolved.yaml -g typescript-axios -o ./src/consumer/generated",The API clients and JSON models are generated using openapi-generator-cli and the generated models are placed in the models folder.
pip install openapi-generator-cli
openapi-generator generate -i SWIFT-API-Swift-Messaging-1.1.0-resolved.yaml --global-property models -g python -o ./modelsThe API clients and JSON models are generated using OpenAPI Generator Maven Plugin. The plugin is configured to generate the code from the OpenAPI specification and the generated code is placed in the target/generated-sources/openapi folder.
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>7.1.0</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<generatorName>java</generatorName>
// highlight-start
<library>resttemplate</library>
// highlight-end
<skipIfSpecIsUnchanged>true</skipIfSpecIsUnchanged>
<generateApis>true</generateApis>
<generateApiDocumentation>false</generateApiDocumentation>
<generateApiTests>false</generateApiTests>
<generateModels>true</generateModels>
<generateModelDocumentation>false</generateModelDocumentation>
<generateModelTests>false</generateModelTests>
<skipValidateSpec>false</skipValidateSpec>
<generateSupportingFiles>true</generateSupportingFiles>
<configOptions>
<useJakartaEe>true</useJakartaEe>
<generateClientAsBean>false</generateClientAsBean>
</configOptions>
<modelPackage>${project.groupId}.oas.model</modelPackage>
<apiPackage>${project.groupId}.oas.api</apiPackage>
// highlight-start
<inputSpec>
${project.basedir}/src/main/openapi/SWIFT-API-Swift-Messaging-1.1.0-resolved.yaml
</inputSpec>
// highlight-end
</configuration>
</execution>
</executions>
</plugin>The API clients and JSON models are generated using NSwag.ApiDescription.Client package.
The OpenAPiReference is configured in the .csproj file and the generated code is placed in the MessagingApi.Generated namespace.
<OpenApiReference Include=".\SWIFT-API-Swift-Messaging-1.1.0-resolved.yaml">
<Namespace>MessagingApi.Generated</Namespace>
<ClassName>MessagingApiClient</ClassName>
<OutputPath>MessagingApiClient.cs</OutputPath>
<Options>/UseBaseUrl:false</Options>
</OpenApiReference>