nelmio_api_doc:
    models:
        use_jms: true
        names:
            - { alias: CustomerEditForm,            type: App\Form\API\CustomerApiEditForm,         groups: [Default, Entity, Customer] }
            - { alias: CustomerEntity,              type: App\Entity\Customer,                      groups: [Default, Entity, Customer, Customer_Entity, Not_Expanded] }
            - { alias: Customer,                    type: App\Entity\Customer,                      groups: [Default, Not_Expanded] }
            - { alias: CustomerRate,                type: App\Entity\CustomerRate,                  groups: [Default, Entity, Customer_Rate] }
            - { alias: CustomerRateForm,            type: App\Form\API\CustomerRateApiForm,         groups: [Default, Entity, Customer_Rate] }
            - { alias: CustomerCollection,          type: App\Entity\Customer,                      groups: [Default, Collection, Customer] }
            - { alias: ProjectEditForm,             type: App\Form\API\ProjectApiEditForm,          groups: [Default, Entity, Project] }
            - { alias: ProjectEntity,               type: App\Entity\Project,                       groups: [Default, Entity, Project, Project_Entity, Not_Expanded] }
            - { alias: Project,                     type: App\Entity\Project,                       groups: [Default, Not_Expanded] }
            - { alias: ProjectExpanded,             type: App\Entity\Project,                       groups: [Default, Expanded] }
            - { alias: ProjectRate,                 type: App\Entity\ProjectRate,                   groups: [Default, Entity, Project_Rate] }
            - { alias: ProjectRateForm,             type: App\Form\API\ProjectRateApiForm,          groups: [Default, Entity, Project_Rate] }
            - { alias: ProjectCollection,           type: App\Entity\Project,                       groups: [Default, Collection, Project] }
            - { alias: ActivityEditForm,            type: App\Form\API\ActivityApiEditForm,         groups: [Default, Entity, Activity] }
            - { alias: ActivityEntity,              type: App\Entity\Activity,                      groups: [Default, Entity, Activity, Activity_Entity, Not_Expanded] }
            - { alias: Activity,                    type: App\Entity\Activity,                      groups: [Default, Not_Expanded] }
            - { alias: ActivityExpanded,            type: App\Entity\Activity,                      groups: [Default, Expanded] }
            - { alias: ActivityRate,                type: App\Entity\ActivityRate,                  groups: [Default, Entity, Activity_Rate] }
            - { alias: ActivityRateForm,            type: App\Form\API\ActivityRateApiForm,         groups: [Default, Entity, Activity_Rate] }
            - { alias: ActivityCollection,          type: App\Entity\Activity,                      groups: [Default, Collection, Activity] }
            - { alias: TagEditForm,                 type: App\Form\API\TagApiEditForm,              groups: [Default, Entity, Tag] }
            - { alias: TagEntity,                   type: App\Entity\Tag,                           groups: [Default, Entity, Tag] }
            - { alias: TimesheetEditForm,           type: App\Form\API\TimesheetApiEditForm,        groups: [Default, Entity, Timesheet, Not_Expanded] }
            - { alias: TimesheetEntity,             type: App\Entity\Timesheet,                     groups: [Default, Entity, Timesheet, Timesheet_Entity, Not_Expanded] }
            - { alias: TimesheetCollection,         type: App\Entity\Timesheet,                     groups: [Default, Collection, Timesheet, Not_Expanded] }
            - { alias: TimesheetCollectionExpanded, type: App\Entity\Timesheet,                     groups: [Default, Collection, Timesheet, Subresource, Expanded] }
            - { alias: UserCreateForm,              type: App\Form\API\UserApiCreateForm,           groups: [Default, Entity, User, User_Entity] }
            - { alias: UserEditForm,                type: App\Form\API\UserApiEditForm,             groups: [Default, Entity, User, User_Entity] }
            - { alias: User,                        type: App\Entity\User,                          groups: [Default] }
            - { alias: UserEntity,                  type: App\Entity\User,                          groups: [Default, Entity, User, User_Entity] }
            - { alias: UserCollection,              type: App\Entity\User,                          groups: [Default, Collection, User] }
            - { alias: TeamEditForm,                type: App\Form\API\TeamApiEditForm,             groups: [Default, Entity, Team, Team_Entity] }
            - { alias: TeamEntity,                  type: App\Entity\Team,                          groups: [Default, Entity, Team, Team_Entity] }
            - { alias: TeamCollection,              type: App\Entity\Team,                          groups: [Default, Collection, Team] }
    areas:
        path_patterns:
            - ^/api(?!/doc)
    documentation:
        #host: '{{hostname}}'
        host: '%router.request_context.host%'
        basePath: '%router.request_context.base_url%'
        schemes: ['%router.request_context.scheme%']
        info:
            title: Kimai 2 - API Docs
            description: |
                JSON API for the Kimai 2 time-tracking software. Read more about its usage in the [API documentation](https://www.kimai.org/documentation/rest-api.html) and then download a [Swagger file](doc.json) for import e.g. in Postman.
                Be aware: it is not yet considered stable and BC breaks might happen, especially when using code generation.
                The order of JSON attributes is not guaranteed.
            version: '0.6'
        securityDefinitions:
            apiUser:
                type: apiKey
                description: 'Value: {Username}'
                name: X-AUTH-USER
                in: header
            apiToken:
                type: apiKey
                description: 'Value: {API Token}'
                name: X-AUTH-TOKEN
                in: header
        security:
            - X-AUTH-USER: []
            - X-AUTH-TOKEN: []
