Skip to main content

Getting Started with Swagger Petstore - OpenAPI 3.0

Introduction

This is a sample Pet Store Server based on the OpenAPI 3.0 specification. You can find out more about Swagger at https://swagger.io. In the third iteration of the pet store, we've switched to the design first approach! You can now help us improve the API whether it's by making changes to the definition itself or to the code. That way, with time, we can improve the API in general, and expose some of the new features in OAS3.

Some useful links:

Find out more about Swagger: https://swagger.io

Install the Package

The package is compatible with Python versions 3.7+. Install the package from PyPi using the following pip command:

pip install mrafnadeem-test-py-sdk==1.0.0

You can also view the package at: https://pypi.python.org/pypi/mrafnadeem-test-py-sdk/1.0.0

Test the SDK

You can test the generated SDK and the server with test cases. unittest is used as the testing framework and pytest is used as the test runner. You can run the tests as follows:

Navigate to the root directory of the SDK and run the following commands

pip install -r test-requirements.txt pytest

Initialize the API Client

Note: Documentation for the client can be found here.

The following parameters are configurable for the API Client:

Parameter Type Description
environment Environment The API environment.
Default: Environment.PRODUCTION
http_client_instance Union[Session, HttpClientProvider] The Http Client passed from the sdk user for making requests
override_http_client_configuration bool The value which determines to override properties of the passed Http Client from the sdk user
http_call_back HttpCallBack The callback value that is invoked before and after an HTTP call is made to an endpoint
timeout float The value to use for connection timeout.
Default: 30
max_retries int The number of times to retry an endpoint call if it fails.
Default: 0
backoff_factor float A backoff factor to apply between attempts after the second try.
Default: 2
retry_statuses Array of int The http statuses on which retry is to be done.
Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524, 408, 413, 429, 500, 502, 503, 504, 521, 522, 524]
retry_methods Array of string The http methods on which retry is to be done.
Default: ["GET", "PUT", "GET", "PUT"]
proxy_settings ProxySettings Optional proxy configuration to route HTTP requests through a proxy server.
logging_configuration LoggingConfiguration The SDK logging configuration for API calls
petstore_auth_credentials PetstoreAuthCredentials The credential object for OAuth 2 Implicit Grant
api_key_credentials ApiKeyCredentials The credential object for Custom Header Signature

The API client can be initialized as follows:

Code-Based Client Initialization

import logging

from swaggerpetstoreopenapi30.configuration import Environment
from swaggerpetstoreopenapi30.http.auth.api_key import ApiKeyCredentials
from swaggerpetstoreopenapi30.http.auth.petstore_auth import PetstoreAuthCredentials
from swaggerpetstoreopenapi30.logging.configuration.api_logging_configuration import LoggingConfiguration
from swaggerpetstoreopenapi30.logging.configuration.api_logging_configuration import RequestLoggingConfiguration
from swaggerpetstoreopenapi30.logging.configuration.api_logging_configuration import ResponseLoggingConfiguration
from swaggerpetstoreopenapi30.models.oauth_scope_petstore_auth import OauthScopePetstoreAuth
from swaggerpetstoreopenapi30.swaggerpetstoreopenapi_30_client import Swaggerpetstoreopenapi30Client

client = Swaggerpetstoreopenapi30Client(
    petstore_auth_credentials=PetstoreAuthCredentials(
        oauth_client_id='OAuthClientId',
        oauth_redirect_uri='OAuthRedirectUri',
        oauth_scopes=[
            OauthScopePetstoreAuth.WRITEPETS,
            OauthScopePetstoreAuth.READPETS
        ]
    ),
    api_key_credentials=ApiKeyCredentials(
        api_key='api_key'
    ),
    environment=Environment.PRODUCTION,
    logging_configuration=LoggingConfiguration(
        log_level=logging.INFO,
        request_logging_config=RequestLoggingConfiguration(
            log_body=True
        ),
        response_logging_config=ResponseLoggingConfiguration(
            log_headers=True
        )
    )
)

Environment-Based Client Initialization

from swaggerpetstoreopenapi30.swaggerpetstoreopenapi_30_client import Swaggerpetstoreopenapi30Client

# Specify the path to your .env file if it’s located outside the project’s root directory.
client = Swaggerpetstoreopenapi30Client.from_environment(dotenv_path='/path/to/.env')

See the Environment-Based Client Initialization section for details.

Environments

The SDK can be configured to use a different environment for making API calls. Available environments are:

Fields

Name Description
PRODUCTION Default

Authorization

This API uses the following authentication schemes.

List of APIs

SDK Infrastructure

Configuration

HTTP

Utilities

Metadata

Release files for mrafnadeem-test-py-sdk 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mrafnadeem-test-py-sdk 1.0.0
File Size Uploaded
mrafnadeem_test_py_sdk-1.0.0.tar.gz 26.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mrafnadeem-test-py-sdk 1.0.0
File Interpreter ABI Platform
mrafnadeem_test_py_sdk-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.0 kB

Release files / mrafnadeem_test_py_sdk-1.0.0.tar.gz

Download URL mrafnadeem_test_py_sdk-1.0.0.tar.gz
Size 26.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a4352f70eaae62d3957ffe307f0135cad2d5aa23e4d56064be2e29dd8b17e41d
BLAKE2b-256 checksum
How to use checksums
ad1a61c12a5b05611abdc2138aead4e87616967efbde912fbd5fb1b6a6f3a378
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.3 CPython/3.13.15 Linux/6.1.158.2-microsoft-standard

Release files / mrafnadeem_test_py_sdk-1.0.0-py3-none-any.whl

Download URL mrafnadeem_test_py_sdk-1.0.0-py3-none-any.whl
Size 49.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
80fbaa74679916a123b4ad8e6554b9c8c226d8be10a0d936b410fa1a3d63a5d1
BLAKE2b-256 checksum
How to use checksums
3e3551ff31f97ebc0e41a927c821b59ae23e42624f45241a069bb7b4c47e1ea8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.3 CPython/3.13.15 Linux/6.1.158.2-microsoft-standard

Release history Release notifications | RSS feed

1.0.1

2 release files

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page