def test_invalid_schema_fails(codec_json, mock_schema_request): # noinspection PyTypeChecker bad_generator = OpenAPISchemaGenerator( info=openapi.Info( title="Test generator", default_version="v1", contact=openapi.Contact(name=69, email=[]), ), version="v2", ) swagger = bad_generator.get_schema(mock_schema_request, True) with pytest.raises(codecs.SwaggerValidationError): codec_json.encode(swagger)
2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.conf import settings from django.conf.urls import url from django.conf.urls.static import static from django.contrib import admin from django.urls import path, include from drf_yasg2 import openapi from drf_yasg2.views import get_schema_view from rest_framework import permissions schema_view = get_schema_view( openapi.Info(title='musicians_site API', default_version='v1', description='Description', contact=openapi.Contact(email='*****@*****.**'), license=openapi.License(name='BSD License')), public=True, permission_classes=(permissions.AllowAny, ), ) urlpatterns = [ path('admin/', admin.site.urls), path('api/', include('lessons.urls')), path('auth/', include('authentication.urls')), path('static-content/', include('static_content.urls')), url(r'^docs/$', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), ]
from rest_framework import routers, permissions, authentication from environments.identities.traits.views import SDKTraits from environments.identities.views import SDKIdentities from features.views import SDKFeatureStates from organisations.views import chargebee_webhook from segments.views import SDKSegments from analytics.views import SDKAnalyticsFlags schema_view = get_schema_view( openapi.Info( title="Flagsmith API", default_version="v1", description="", license=openapi.License(name="BSD License"), contact=openapi.Contact(email="*****@*****.**"), ), public=True, permission_classes=(permissions.AllowAny, ), authentication_classes=(authentication.SessionAuthentication, ), ) traits_router = routers.DefaultRouter() traits_router.register(r"", SDKTraits, basename="sdk-traits") app_name = "v1" urlpatterns = [ url(r"^organisations/", include("organisations.urls"), name="organisations"),
from django.urls import path, include from drf_yasg2 import openapi from drf_yasg2.views import get_schema_view from rest_framework import routers, permissions from rest_framework.authtoken import views import praggregator.views from app.views import ProductViewSet, OfferViewSet schema_view = get_schema_view( openapi.Info( title="Product Aggregator API", default_version='v1', description="Let this be the ultimate source of the Product aggregator knowledge. Use it wisely and if " "anything is wrong, contact the developer.", contact=openapi.Contact(email="*****@*****.**"), ), public=True, permission_classes=(permissions.AllowAny,), ) router = routers.DefaultRouter() router.register(r'products', ProductViewSet) router.register(r'offers', OfferViewSet) urlpatterns = [ path('admin/', admin.site.urls), path('signup/', praggregator.views.signup, name='signup'), path('api/v1/', include(router.urls)), path('api/v1/auth/', views.obtain_auth_token, name='auth'), url(r'^swagger(?P<format>\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json'),
from django.urls import path, re_path from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from rest_framework import permissions from api.v1.mailing.viewsets import SubscriberViewSet, MailHistoryViewSet schema_view = get_schema_view( openapi.Info( title="헤렌 코딩 테스트", default_version="v1", description="헤렌 코딩 테스트 API 문서입니다 ㅎ-ㅎ", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ), public=True, permission_classes=(permissions.IsAdminUser, ), ) urlpatterns = [ path("/subscribe", SubscriberViewSet.as_view({"post": "create"}), name="subscribe"), path( "/unsubscribe", SubscriberViewSet.as_view({"post": "unsubscribe"}), name="unsubscribe", ), path(
from django.conf.urls import url from django.contrib import admin from django.urls import path, include from django.urls import path, re_path from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from django.conf.urls.static import static schema_view = get_schema_view( openapi.Info( title="My Django API", default_version='v1', description="Test description", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ), public=True, permission_classes=(permissions.AllowAny, ), ) def trigger_error(request): division_by_zero = 1 / 0 urlpatterns = [ # Pages path('admin/', admin.site.urls), path('', include('pages.urls')),
] # static path # urlpatterns += [static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)] from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi schema_view = get_schema_view( openapi.Info( title="2020ELK API", default_version='v1', description="systex B85B project", # terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), # license=openapi.License(name="BSD License"), ), # public=True, # patterns=[url(r"^api/", include((es_urls, 'api'), namespace='v1'))], permission_classes=(permissions.AllowAny, ), ) urlpatterns += [ path('swagger/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), path('redoc/', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'), ]
from backend.usage.views import ReportViewSet, StationViewSet, AgentSubmit, AgentReportQuery, AgentStationQuery, EmailReportView, AgentResubmit from backend.users.views import UserInfoViewSet, UserViewSet, ChangePassword, ChangeUserInfo from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi router = routers.DefaultRouter() router.register("station", StationViewSet, basename="station") router.register("usage", ReportViewSet, basename="usage") router.register("userinfo", UserInfoViewSet, basename="userinfo") router.register("user", UserViewSet, basename="user") schema_view = get_schema_view( openapi.Info( title="ibiblio Radiostats Backend API", default_version='v1', contact=openapi.Contact(email="*****@*****.**"), ), public=True, permission_classes=(permissions.AllowAny, ), ) urlpatterns = [ path('api/user/change_password/', ChangePassword.as_view(), name='change_password'), path('api/user/change_userinfo/', ChangeUserInfo.as_view(), name='change_userinfo'), path('api/usage/agent/submit/', AgentSubmit.as_view(), name='agent_submit'), path('api/usage/agent/submit/<int:pk>/',
from django.contrib import admin from django.urls import path,include from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from django.conf import settings from django.conf.urls.static import static schema_view = get_schema_view( openapi.Info( title="PDF extract API", default_version='v1', description="extract pdf", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="MIT License"), ), public=True, permission_classes=(permissions.AllowAny,), ) urlpatterns = [ path('admin/', admin.site.urls), path('api/v1/api-auth/', include('rest_framework.urls')), path('api/v1/', include('account_app.urls')), path('api/v1/', include('pdf_app.urls')), path('swagger/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), path('redoc/', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'), ]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
description = '' with open(configuration['DESCRIPTION_PATH'], 'r') as f: description = f.read() contact = configuration.get('CONTACT', None) logo = configuration.get('LOGO', None) # Used to generate the Swagger / ReDoc documentation automatically SchemaView = get_schema_view( openapi.Info( title=configuration['TITLE'], default_version=configuration['VERSION'], description=description, contact=None if not contact else ( openapi.Contact( name=contact['NAME'], email=contact['EMAIL'] ) ), x_logo=None if not logo else { 'url': logo['SRC'], 'backgroundColor': '#fafafa', 'altText': configuration['TITLE'], 'href': logo['URL'], } ), public=True, permission_classes=(permissions.AllowAny,), )
Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import path, include from django.conf import settings from drf_yasg2 import openapi from drf_yasg2.views import SwaggerUIRenderer, get_schema_view from rest_framework.permissions import AllowAny from main.views import survey, webhook SwaggerUIRenderer.template = 'swagger-ui.html' schema_view = get_schema_view( openapi.Info( title="ESH Survey API", default_version='v1', description="Backend as a Service (BaaS) for ESH Survey", contact=openapi.Contact(email="*****@*****.**"), ), public=True, permission_classes=(AllowAny,), ) urlpatterns = [ path('admin/', admin.site.urls), path('<int:survey_id>/<str:uuid>', survey, name='survey'), path('webhook', webhook, name="webhook"), path('', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), ]
from django.urls import path, include from rest_framework import routers from crecheapp import api from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from . import views from .myviews import contact, login schema_view = get_schema_view( openapi.Info( title="API Crèche", default_version='v1', description="Documentation de l'API du projet Crèche", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ), public=True, permission_classes=(permissions.AllowAny, ), ) rooter = routers.DefaultRouter() rooter.register('blog', api.BlogViewSet, basename='blog') rooter.register('galerie', api.GaleriesViewSet, basename='galerie') rooter.register('utilisateur', api.UtilisateurViewSet, basename='utilisateur') rooter.register('parent', api.ParentViewSet, basename='parent') rooter.register('enfant', api.EnfantViewSet, basename='enfant') rooter.register('groupe', api.GroupeViewSet, basename='groupe') rooter.register('album', api.AlbumViewSet, basename='album')
from bothub.api.v2.swagger import CustomOpenAPISchemaGenerator from bothub.health.views import ping from bothub.health.views import r200 from bothub.common.views import download_bot_data from bothub.api.grpc.user.handlers import grpc_handlers as grpc_authentication_handlers from bothub.api.grpc.organization.handlers import grpc_handlers as grpc_common_handlers from bothub.api.grpc.repository.handlers import ( grpc_handlers as grpc_repository_handlers, ) schema_view = get_schema_view( openapi.Info( title="API Documentation", default_version="v2.1.29", description="Documentation", terms_of_service="https://bothub.it/terms", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="GPL-3.0"), ), public=True, permission_classes=(permissions.AllowAny, ), generator_class=CustomOpenAPISchemaGenerator, ) urlpatterns = [ path("", schema_view.with_ui("redoc")), path("v2/", include(bothub_api_v2_urls)), path("admin/", admin.site.urls), path("ping/", ping, name="ping"), path("200/", r200, name="200"), path("downloadbotdata/<int:update_id>/", download_bot_data,
path(f'captcha/', include('captcha.urls')), # API认证 path(f'api-auth/', include('rest_framework.urls', namespace='rest_framework')), path(f'api-token-auth/', authtoken_view.obtain_auth_token), ] # 接口文档 仅调试模式可用 if settings.DEBUG: openapi_obj = openapi.Info( title="项目名称", default_version='v1', description="说明", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ) schema_view = get_schema_view( openapi_obj, public=True, # permission_classes=(permissions.AllowAny,), permission_classes=(permissions.IsAdminUser, ), ) urlpatterns.extend([ # AutoScheme接口文档 path(f'api-docs/auto/', include_docs_urls(title=openapi_obj.title)), # Swagger文档 path(f'api-docs/swagger/', schema_view.with_ui('swagger', cache_timeout=0)), path(f'api-docs/swagger<str:format>',
from rest_framework import permissions urlpatterns = [ path('admin/', admin.site.urls), path('auth/', include('djoser.urls')), path('auth/', include('djoser.urls.jwt')), path('api-auth/', include('rest_framework.urls')), path('misc/', include('misc.urls')), ] schema_view = get_schema_view( openapi.Info( title='EnTrOpY', default_version='v1', description='...void...', contact=openapi.Contact(email='*****@*****.**'), license=openapi.License(name='BDSM License'), ), public=True, permission_classes=(permissions.AllowAny, ), ) # Schema API documentations endpoints. urlpatterns += [ re_path( r'^swagger(?P<format>\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json', ), re_path( r'^swagger/$',
from drf_yasg2.views import get_schema_view from rest_framework import authentication, permissions, routers from environments.identities.traits.views import SDKTraits from environments.identities.views import SDKIdentities from features.views import SDKFeatureStates from organisations.views import chargebee_webhook from segments.views import SDKSegments schema_view = get_schema_view( openapi.Info( title="Flagsmith API", default_version="v1", description="", license=openapi.License(name="BSD License"), contact=openapi.Contact(email="*****@*****.**"), ), public=True, permission_classes=(permissions.AllowAny, ), authentication_classes=(authentication.SessionAuthentication, ), ) traits_router = routers.DefaultRouter() traits_router.register(r"", SDKTraits, basename="sdk-traits") app_name = "v1" urlpatterns = [ url(r"^organisations/", include("organisations.urls"), name="organisations"),
Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.urls import path, re_path, include from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi schema_view = get_schema_view( openapi.Info( title="Tweet API", default_version='v1', description="Welcome to the world of Tweet", terms_of_service="https://www.tweet.org", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="Awesome IP"), ), public=True, permission_classes=(permissions.AllowAny, ), ) urlpatterns = [ re_path(r'^doc(?P<format>\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json'), path('doc/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), path('redoc/', schema_view.with_ui('redoc', cache_timeout=0),
Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import path from django.urls.conf import include from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi #SWAGGER schema schema_view = get_schema_view( openapi.Info( title="Mantis CRM company API", default_version='v1', description="CRM company node of MANTIS core project", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ), public=True, ) urlpatterns = [ path('admin/', admin.site.urls), path('api/v1/doc', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), path('api/v1/company/', include('company.urls')), #path('api/v1/finance', include('finance.urls')) ]
from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from rest_framework_simplejwt.views import ( TokenObtainPairView, TokenRefreshView, ) schema_view = get_schema_view( openapi.Info( title="SuperBol API", default_version='v1', description="Documentacao", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="BSD License"), ), public=True, permission_classes=(permissions.AllowAny,), ) router = routers.SimpleRouter() router.register(r'api/gerente', GerenteViewSet) router.register(r'api/administrador', AdministradorViewSet) router.register(r'api/banca', BancaViewSet) router.register(r'api/cambista', CambistaViewSet) router.register(r'api/config', ConfigViewSet) router.register(r'api/cliente', ClienteViewSet) router.register(r'api/plano', PlanoViewSet) router.register(r'api/contaspg', ContaPgViewSet)
from rest_framework_simplejwt import views as jwt_views from rest_framework_simplejwt.views import ( TokenObtainPairView, TokenRefreshView, ) from users.views import UserViewSet from app.views import AppViewSet schema_view = get_schema_view( openapi.Info( title="Digidex portail API", default_version='v1', description="This APi have been made for Digidex design", contact=openapi.Contact(email="doumbialassane10@@gmail.com"), license=openapi.License(name="Personal License"), ), public=True, permission_classes=(permissions.AllowAny, ), ) # Create a router and register our viewsets with it. router = DefaultRouter() #router.register(r'apps', AppList) router.register(r'users', UserViewSet) #router.register(r'app', AppViewSet) urlpatterns = [ path('admin/', admin.site.urls), path(
from rest_framework.authtoken.views import obtain_auth_token from rest_framework import permissions from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from django.conf.urls.static import static from django.views.static import serve from django.conf import settings schema_view = get_schema_view( openapi.Info( title="Arthub API", default_version="v1", description="Application Interface", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="MIT License"), ), public=True, permission_classes=(permissions.AllowAny, ), ) urlpatterns = [ path("admin/", admin.site.urls), re_path( r"^swagger(?P<format>\.json|\.yaml)$", schema_view.without_ui(cache_timeout=0), name="schema-json", ), re_path( r"^swagger/$",
from django.urls import path, include from schema_graph.views import Schema from drf_yasg2.views import get_schema_view from drf_yasg2 import openapi from django.conf.urls.static import static from django.conf import settings from rest_framework import permissions, routers from rest_framework_simplejwt import views as jwt_views schema_view = get_schema_view( openapi.Info( title="LBA partnership API", default_version='v1', description="This APi have been made for LBA design", contact=openapi.Contact(email="*****@*****.**"), license=openapi.License(name="Personal License"), ), public=True, permission_classes=(permissions.AllowAny, ), ) urlpatterns = [ path('admin/', admin.site.urls), path('', include('api.urls')), path('auth/email/', jwt_views.TokenObtainPairView.as_view(), name='token_obtain_pair'), path('auth/token/refresh/', jwt_views.TokenRefreshView.as_view(), name='token_refresh'),