# Must have webform.settings route for config translation which is why there # is no 'webform.settings.forms' route. webform.config: path: '/admin/structure/webform/config' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigFormsForm' _title: 'Webforms: Forms configuration' requirements: _permission: 'administer webform' webform.config.elements: path: '/admin/structure/webform/config/elements' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigElementsForm' _title: 'Webforms: Elements configuration' requirements: _permission: 'administer webform' webform.config.submissions: path: '/admin/structure/webform/config/submissions' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigSubmissionsForm' _title: 'Webforms: Submissions configuration' requirements: _permission: 'administer webform' webform.config.handlers: path: '/admin/structure/webform/config/handlers' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigHandlersForm' _title: 'Webforms: Handlers configuration' requirements: _permission: 'administer webform' webform.config.exporters: path: '/admin/structure/webform/config/exporters' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigExportersForm' _title: 'Webforms: Exporters configuration' requirements: _permission: 'administer webform' webform.config.libraries: path: '/admin/structure/webform/config/libraries' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigLibrariesForm' _title: 'Webforms: Libraries configuration' requirements: _permission: 'administer webform' webform.config.advanced: path: '/admin/structure/webform/config/advanced' defaults: _form: '\Drupal\webform\Form\AdminConfig\WebformAdminConfigAdvancedForm' _title: 'Webforms: Advanced configuration' requirements: _permission: 'administer webform' # Help webform.help.video: path: '/admin/help/webform/video/{id}' defaults: _form: '\Drupal\webform\Form\WebformHelpVideoForm' requirements: _permission: 'access content' # Add-ons webform.addons: path: '/admin/structure/webform/addons' defaults: _controller: '\Drupal\webform\Controller\WebformAddonsController::index' _title: 'Webforms: Add-ons' requirements: _permission: 'administer webform' # Contribute webform.contribute: path: '/admin/structure/webform/contribute' defaults: _controller: '\Drupal\webform\Controller\WebformContributeController::index' _title: 'Webforms: Contribute' requirements: _permission: 'administer webform' webform.contribute.settings: path: '/admin/structure/webform/contribute/configure' defaults: _form: '\Drupal\webform\Form\WebformContributeForm' _title: 'Configure Community Information' requirements: _permission: 'administer webform' webform.contribute.autocomplete: path: '/admin/structure/webform/contribute/autocomplete/{account_type}' defaults: _controller: '\Drupal\webform\Controller\WebformContributeController::autocomplete' requirements: _permission: 'administer webform' # Forms entity.webform.collection: path: '/admin/structure/webform' defaults: _entity_list: 'webform' _title: 'Webforms' requirements: _custom_access: '\Drupal\webform\Access\WebformAccountAccess::checkOverviewAccess' entity.webform.autocomplete: path: '/admin/structure/webform/autocomplete' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::autocomplete' requirements: _custom_access: '\Drupal\webform\Access\WebformAccountAccess::checkOverviewAccess' entity.webform.autocomplete.archived: path: '/admin/structure/webform/autocomplete/archived' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::autocomplete' archived: TRUE requirements: _custom_access: '\Drupal\webform\Access\WebformAccountAccess::checkOverviewAccess' entity.webform.canonical: path: '/webform/{webform}' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::addForm' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.submission_page' entity.webform.access_denied: path: '/webform/{webform}/access-denied' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::accessDenied' _title_callback: '\Drupal\webform\Controller\WebformEntityController::accessDeniedTitle' requirements: # Access denied is available to all users. _access: 'TRUE' entity.webform.assets.javascript: path: '/webform/javascript/{webform}' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::javascript' requirements: _entity_access: 'webform.view' entity.webform.assets.css: path: '/webform/css/{webform}' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::css' requirements: _entity_access: 'webform.view' entity.webform.confirmation: path: '/webform/{webform}/confirmation' defaults: _controller: '\Drupal\webform\Controller\WebformEntityController::confirmation' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.view' entity.webform.user.submissions: path: '/webform/{webform}/submissions/{submission_view}' defaults: _entity_list: 'webform_submission' _title: 'Submissions' submission_view: '' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_view_own' entity.webform.user.drafts: path: '/webform/{webform}/drafts/{submission_view}' defaults: _entity_list: 'webform_submission' _title: 'Drafts' submission_view: '' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_create' entity.webform.user.submission: path: '/webform/{webform}/submissions/{webform_submission}' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionViewController::view' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' view_mode: 'html' requirements: _entity_access: 'webform_submission.view' entity.webform.user.submission.edit: path: '/webform/{webform}/submissions/{webform_submission}/edit' defaults: _entity_form: 'webform_submission.edit' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _entity_access: 'webform_submission.update' entity.webform.user.submission.delete: path: '/webform/{webform}/submissions/{webform_submission}/delete' defaults: _entity_form: 'webform_submission.delete' _title: 'Delete webform submission' requirements: _entity_access: 'webform_submission.delete' entity.webform.user.submission.duplicate: path: '/webform/{webform}/submissions/{webform_submission}/duplicate' defaults: _entity_form: 'webform_submission.duplicate' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' duplicate: TRUE setting: 'submission_user_duplicate' value: TRUE options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform_submission.update' _custom_access: '\Drupal\webform\Access\WebformEntityAccess::checkWebformSettingValue' entity.webform.test_form: path: '/webform/{webform}/test' defaults: _controller: '\Drupal\webform\Controller\WebformTestController::testForm' _title_callback: '\Drupal\webform\Controller\WebformTestController::title' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.test' entity.webform.export_form: path: '/admin/structure/webform/manage/{webform}/export' defaults: _entity_form: 'webform.export' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _permission: 'export configuration' entity.webform.add_form: path: '/admin/structure/webform/add' defaults: _entity_form: 'webform.add' _title: 'Add webform' requirements: _entity_create_access: 'webform' entity.webform.edit_form: path: '/admin/structure/webform/manage/{webform}' defaults: _entity_form: 'webform.edit' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.duplicate_form: path: '/admin/structure/webform/manage/{webform}/duplicate' defaults: _entity_form: 'webform.duplicate' _title: 'Duplicate webform' requirements: _entity_access: 'webform.duplicate' entity.webform.delete_form: path: '/admin/structure/webform/manage/{webform}/delete' defaults: _entity_form: 'webform.delete' _title: 'Delete webform' requirements: _entity_access: 'webform.delete' # Webform settings. entity.webform.settings: path: '/admin/structure/webform/manage/{webform}/settings' defaults: _entity_form: 'webform.settings' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.settings_form: path: '/admin/structure/webform/manage/{webform}/settings/form' defaults: _entity_form: 'webform.settings_form' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.settings_submissions: path: '/admin/structure/webform/manage/{webform}/settings/submissions' defaults: _entity_form: 'webform.settings_submissions' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.settings_confirmation: path: '/admin/structure/webform/manage/{webform}/settings/confirmation' defaults: _entity_form: 'webform.settings_confirmation' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.settings_assets: path: '/admin/structure/webform/manage/{webform}/settings/assets' defaults: _entity_form: 'webform.settings_assets' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' _permission: 'edit webform assets' entity.webform.settings_access: path: '/admin/structure/webform/manage/{webform}/access' defaults: _entity_form: 'webform.settings_access' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' # Webform submission results entity.webform.results_submissions: path: '/admin/structure/webform/manage/{webform}/results/submissions/{submission_view}' defaults: _entity_list: 'webform_submission' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' submission_view: '' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results.source_entity.autocomplete: path: '/admin/structure/webform/manage/{webform}/results/source-entity/autocomplete' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionsController::sourceEntityAutocomplete' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results_submissions.custom: path: '/admin/structure/webform/manage/{webform}/results/submissions/custom' defaults: _form: 'Drupal\webform\Form\WebformResultsCustomForm' _title: 'Customize table' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.update' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results_export: path: '/admin/structure/webform/manage/{webform}/results/download' defaults: _controller: '\Drupal\webform\Controller\WebformResultsExportController::index' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results_export_file: path: '/admin/structure/webform/manage/{webform}/results/download/file/{filename}' defaults: _controller: '\Drupal\webform\Controller\WebformResultsExportController::file' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results_clear: path: '/admin/structure/webform/manage/{webform}/results/clear' defaults: _form: 'Drupal\webform\Form\WebformResultsClearForm' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_purge_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkResultsAccess' entity.webform.results_log: path: '/admin/structure/webform/manage/{webform}/results/log' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionLogController::overview' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' options: parameters: webform: type: 'entity:webform' requirements: _permission: 'access webform submission log' _entity_access: 'webform.submission_view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess:checkLogAccess' # Webform options entity.webform_options.collection: path: '/admin/structure/webform/config/options/manage' defaults: _entity_list: 'webform_options' _title: 'Webforms: Options' requirements: _permission: 'administer webform' entity.webform_options.add_form: path: '/admin/structure/webform/config/options/manage/add' defaults: _entity_form: 'webform_options.add' _title: 'Add webform options' requirements: _entity_create_access: 'webform_options' entity.webform_options.edit_form: path: '/admin/structure/webform/config/options/manage/{webform_options}/edit' defaults: _entity_form: 'webform_options.edit' _title: 'Edit webform options' requirements: _entity_access: 'webform_options.update' entity.webform_options.duplicate_form: path: '/admin/structure/webform/config/options/{webform_options}/duplicate' defaults: _entity_form: 'webform_options.duplicate' _title: 'Duplicate webform options' requirements: _entity_access: 'webform_options.duplicate' entity.webform_options.delete_form: path: '/admin/structure/webform/config/options/{webform_options}/delete' defaults: _entity_form: 'webform_options.delete' _title: 'Delete webform options' requirements: _entity_access: 'webform_options.delete' # Webform results (submissions) entity.webform_submission.collection: path: '/admin/structure/webform/submissions/manage/{submission_view}' defaults: _entity_list: 'webform_submission' _title: 'Webforms: Submissions' submission_view: '' requirements: _custom_access: '\Drupal\webform\Access\WebformAccountAccess:checkSubmissionAccess' entity.webform_submission.collection_purge: path: '/admin/structure/webform/submissions/purge' defaults: _form: 'Drupal\webform\Form\WebformSubmissionsPurgeForm' _title: 'Webforms: Submissions purge' requirements: _permission: 'administer webform' # Webform user (submissions) entity.webform_submission.user: path: '/user/{user}/submissions/{submission_view}' defaults: _entity_list: 'webform_submission' _title: 'Submissions' submission_view: '' requirements: _custom_access: '\Drupal\webform\Access\WebformAccountAccess::checkUserSubmissionsAccess' options: parameters: user: type: entity:user # Webform log (submissions) entity.webform_submission.collection_log: path: '/admin/structure/webform/submissions/log' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionLogController::overview' _title: 'Webforms: Submissions log' requirements: _permission: 'access webform submission log' _custom_access: '\Drupal\webform\Access\WebformAccountAccess:checkSubmissionAccess' # Webform submissions entity.webform_submission.canonical: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionViewController::view' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' view_mode: 'html' requirements: _entity_access: 'webform_submission.view' entity.webform_submission.access_denied: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/access-denied' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionController::accessDenied' _title_callback: '\Drupal\webform\Controller\WebformSubmissionController::accessDeniedTitle' requirements: # Access denied is available to all users. _access: 'TRUE' entity.webform_submission.table: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/table' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionViewController::view' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' view_mode: 'table' requirements: _entity_access: 'webform_submission.view' entity.webform_submission.text: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/text' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionViewController::view' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' view_mode: 'text' requirements: _entity_access: 'webform_submission.view_any' entity.webform_submission.yaml: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/yaml' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionViewController::view' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' view_mode: 'yaml' requirements: _entity_access: 'webform_submission.view_any' entity.webform_submission.log: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/log' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionLogController::overview' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _permission: 'access webform submission log' _entity_access: 'webform_submission.view_any' _custom_access: '\Drupal\webform\Access\WebformEntityAccess::checkLogAccess' entity.webform_submission.edit_form: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/edit' defaults: _entity_form: 'webform_submission.edit' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _entity_access: 'webform_submission.update' entity.webform_submission.edit_form.all: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/edit/all' defaults: _entity_form: 'webform_submission.edit_all' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _entity_access: 'webform_submission.update' _custom_access: '\Drupal\webform\Access\WebformSubmissionAccess::checkWizardPagesAccess' entity.webform_submission.notes_form: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/notes' defaults: _entity_form: 'webform_submission.notes' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _entity_access: 'webform_submission.notes' entity.webform_submission.resend_form: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/resend' defaults: _form: 'Drupal\webform\Form\WebformSubmissionResendForm' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' requirements: _entity_access: 'webform_submission.update_any' _custom_access: '\Drupal\webform\Access\WebformSubmissionAccess::checkResendAccess' entity.webform_submission.duplicate_form: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/duplicate' defaults: _entity_form: 'webform_submission.duplicate' _title_callback: '\Drupal\webform\Controller\WebformSubmissionViewController::title' duplicate: TRUE requirements: _entity_access: 'webform_submission.update_any' entity.webform_submission.delete_form: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/delete' defaults: _entity_form: 'webform_submission.delete' _title: 'Delete webform submission' requirements: _entity_access: 'webform_submission.delete' entity.webform_submission.locked_toggle: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/locked' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionController::locked' requirements: _entity_access: 'webform_submission.update' _csrf_token: 'TRUE' entity.webform_submission.sticky_toggle: path: '/admin/structure/webform/manage/{webform}/submission/{webform_submission}/sticky' defaults: _controller: '\Drupal\webform\Controller\WebformSubmissionController::sticky' requirements: _entity_access: 'webform_submission.update' _csrf_token: 'TRUE' webform_submission.multiple_delete_confirm: path: '/admin/structure/webform/results/delete' defaults: _form: '\Drupal\webform\Form\WebformSubmissionDeleteMultiple' requirements: _permission: 'administer webform submission' # Handlers. entity.webform.handlers: path: '/admin/structure/webform/manage/{webform}/handlers' defaults: _entity_form: 'webform.handlers' _title_callback: '\Drupal\webform\Controller\WebformEntityController::title' requirements: _entity_access: 'webform.update' entity.webform.handler: path: '/admin/structure/webform/manage/{webform}/handlers/add' defaults: _controller: '\Drupal\webform\Controller\WebformPluginHandlerController::listHandlers' _title: 'Select a handler' requirements: _entity_access: 'webform.update' _custom_access: '\Drupal\webform\Access\WebformHandlerAccess::checkHandlerAccess' entity.webform.handler.add_form: path: '/admin/structure/webform/manage/{webform}/handlers/add/{webform_handler}' defaults: _form: '\Drupal\webform\Form\WebformHandlerAddForm' _title: 'Add webform handler' requirements: _entity_access: 'webform.update' _custom_access: '\Drupal\webform\Access\WebformHandlerAccess::checkHandlerAccess' entity.webform.handler.add_email: path: '/admin/structure/webform/manage/{webform}/handlers/add/email' defaults: _form: '\Drupal\webform\Form\WebformHandlerAddForm' _title: 'Add email' webform_handler: email requirements: _entity_access: 'webform.update' _custom_access: '\Drupal\webform\Access\WebformHandlerAccess::checkHandlerAccess' entity.webform.handler.edit_form: path: '/admin/structure/webform/manage/{webform}/handlers/{webform_handler}/edit' defaults: _form: '\Drupal\webform\Form\WebformHandlerEditForm' _title: 'Edit webform handler' requirements: _entity_access: 'webform.update' entity.webform.handler.duplicate_form: path: '/admin/structure/webform/manage/{webform}/handlers/{webform_handler}/duplicate' defaults: _form: '\Drupal\webform\Form\WebformHandlerDuplicateForm' _title: 'Duplicate webform handler' requirements: _entity_access: 'webform.update' entity.webform.handler.delete_form: path: '/admin/structure/webform/manage/{webform}/handlers/{webform_handler}/delete' defaults: _form: '\Drupal\webform\Form\WebformHandlerDeleteForm' _title: 'Delete webform handler' requirements: _entity_access: 'webform.update' entity.webform.handler.enable: path: '/admin/structure/webform/manage/{webform}/handlers/{webform_handler}/enable' defaults: _controller: '\Drupal\webform\WebformEntityHandlersForm::ajaxOperation' op: enable requirements: _entity_access: 'webform.update' _csrf_token: 'TRUE' entity.webform.handler.disable: path: '/admin/structure/webform/manage/{webform}/handlers/{webform_handler}/disable' defaults: _controller: '\Drupal\webform\WebformEntityHandlersForm::ajaxOperation' op: disable requirements: _entity_access: 'webform.update' _csrf_token: 'TRUE' # Plugins. webform.reports_plugins.elements: path: '/admin/reports/webform-plugins/elements' defaults: _controller: '\Drupal\webform\Controller\WebformPluginElementController::index' _title: 'Webform plugins: Elements' requirements: _permission: 'administer webform' webform.reports_plugins.handlers: path: '/admin/reports/webform-plugins/handlers' defaults: _controller: '\Drupal\webform\Controller\WebformPluginHandlerController::index' _title: 'Webform plugins: Handlers' requirements: _permission: 'administer webform' webform.reports_plugins.exporters: path: '/admin/reports/webform-plugins/exporters' defaults: _controller: '\Drupal\webform\Controller\WebformPluginExporterController::index' _title: 'Webform plugins: Exporters' requirements: _permission: 'administer webform' # Autocomplete. webform.element.autocomplete: path: '/webform/{webform}/autocomplete/{key}' defaults: _controller: '\Drupal\webform\Controller\WebformElementController::autocomplete' options: parameters: webform: type: 'entity:webform' requirements: _entity_access: 'webform.submission_page' # Message. webform.element.message.close: path: '/webform/message/close/{storage}/{id}' defaults: _controller: '\Drupal\webform\Controller\WebformElementController::close' _storage: user requirements: _user_is_logged_in: 'TRUE' _csrf_token: 'TRUE'