Skip to main content

VNG API tooling

Project description

Build status Code quality checks Coverage status Documentation Status black

python-versions django-versions pypi-version

VNG-API-common biedt generieke implementaties en tooling voor RESTful APIs in een Common Ground gegevenslandschap.

De tooling wordt o.a. gebruikt in de referentie-implementaties van componenten voor zaakgericht werken, maar ook in VNG-APIs voor referentielijsten en de Gemeentelijke Selectielijst.

Zie de uitgebreide documentatie voor de features en het gebruik.

1 Features

  • Centraal beheer van constanten die de verschillende componenten overstijgen

  • GeoJSON OpenAPI definities

  • Support voor Geo CRS negotation

  • Ingebouwde support voor nested viewsets met declaratievere syntax voor registratie

  • Vaak voorkomende validators:
    • RSIN/BSN validator

    • Numerieke waarde validator

    • Niet-negatieve waarde validator

    • Alfanumerieke waarde (zonder diacritics)

    • URL-validator (test dat URL bestaat) met pluggable link-checker

    • UntilNowValidator - valideer datetimes tot en met nu.

    • UniekeIdentificatieValidator (in combinatie met organisatie)

    • InformatieObjectUniqueValidator om te valideren dat M2M entries slechts eenmalig voorkomen

    • ObjectInformatieObjectValidator om te valideren dat de synchronisatie van een object-informatieobject relatie pas kan nadat deze relatie in het DRC gemaakt is

    • IsImmutableValidator - valideer dat bepaalde velden niet gewijzigd worden bij een (partial) update, maar wel mogen gezet worden bij een create

    • ResourceValidator - valideer dat een URL een bepaalde resource ontsluit

  • Custom inspectors voor drf-yasg:
    • Support voor rest_framework_gis GeometryField

    • SUpport voor django-extra-fields Base64FieldMixin

    • URL-based related resource filtering (django-filter support)

    • verzameling van mogelijke error-responses per operation

  • Management command generate_swagger overloaded
    • neemt default versie mee en maakt server-informatie domein-agnostisch

    • optie om informatiemodel-resources naar markdown te renderen met backlinks naar gemmaonline.nl

  • Support voor ISO 8601 durations

  • Custom model fields:
    • RSINField

    • BSNField

    • LanguageField

    • VertrouwelijkheidsAanduidingField

    • DaysDurationField

  • Mocks voor de validators die netwerk IO hebben, eenvoudig via @override_settings toe te passen

  • Test utilities

  • Optionele notificaties applicatie:
    • ontvangen van webhook events

    • configureren en registreren van notificatiecomponent/webhooks

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vng-api-common-2.0.5.tar.gz (2.2 MB view hashes)

Uploaded Source

Built Distribution

vng_api_common-2.0.5-py3-none-any.whl (2.3 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page