api_platform:
    title: Domain Watchdog API
    description: List of operations that can be performed on the Domain Watchdog project API. These endpoints allow you to perform any useful action related to domain name searches, managing Watchlists and Connectors, etc.
    version: 1.3.5
    asset_package: 'api_platform'
    openapi:
        contact:
            name: Domain Watchdog
            url: https://github.com/maelgangloff/domain-watchdog/
        license:
            name: GNU Affero General Public License v3.0
            url: https://www.gnu.org/licenses/agpl-3.0.txt
    formats:
        jsonld: [ 'application/ld+json' ]
        xml: [ 'application/xml' ]
        json: [ 'application/json' ]
        text: [ 'text/calendar' ]
    docs_formats:
        jsonld: [ 'application/ld+json' ]
        jsonopenapi: [ 'application/vnd.openapi+json' ]
        html: [ 'text/html' ]
    defaults:
        stateless: true
        cache_headers:
            vary: [ 'Content-Type', 'Authorization', 'Origin' ]
        pagination_client_items_per_page: true
        extra_properties:
            standard_put: true
            rfc_7807_compliant_errors: true
    keep_legacy_inflector: false
    use_symfony_listeners: true
    show_webby: false
    swagger:
        api_keys:
            JWT:
                name: Authorization
                type: header
    exception_to_status:
        # The 4 following handlers are registered by default, keep those lines to prevent unexpected side effects
        Symfony\Component\Serializer\Exception\ExceptionInterface: 400 # Use a raw status code (recommended)
        ApiPlatform\Exception\InvalidArgumentException: !php/const Symfony\Component\HttpFoundation\Response::HTTP_BAD_REQUEST
        ApiPlatform\ParameterValidator\Exception\ValidationExceptionInterface: 400
        Doctrine\ORM\OptimisticLockException: 409

        # Validation exception
        ApiPlatform\Validator\Exception\ValidationException: !php/const Symfony\Component\HttpFoundation\Response::HTTP_UNPROCESSABLE_ENTITY

        App\Exception\DomainNotFoundException: 404
        App\Exception\MalformedDomainException: 400
        App\Exception\TldNotSupportedException: 400
        App\Exception\UnknownRdapServerException: 400
        App\Exception\UnsupportedDsnScheme: 400
        App\Exception\RdapServerException: 400

        # Provider exception
        App\Exception\Provider\UserNoExplicitConsentException: 451
        App\Exception\Provider\AbstractProviderException: 400
        Metaregistrar\EPP\eppException: 400
