All the other resources contain two routes for handling the delete operation:

Route(name='scalinggroups_delete', pattern='/scalinggroups/delete'),
    Route(name='scalinggroup_delete', pattern='/scalinggroups/{id}/delete'),
    Route(name='scalinggroup_policy_delete', pattern='/scalinggroups/{id}/policies/delete'),
    Route(name='launchconfigs_delete', pattern='/launchconfigs/delete'),
    Route(name='launchconfig_delete', pattern='/launchconfigs/{id}/delete'),
    Route(name='volumes_delete', pattern='/volumes/delete'),
    Route(name='volume_delete', pattern='/volumes/{id}/delete'),
    Route(name='volume_snapshot_delete', pattern='/volumes/{id}/snapshots/{snapshot_id}/delete'),
    Route(name='snapshots_delete', pattern='/snapshots/delete'),
    Route(name='snapshot_delete', pattern='/snapshots/{id}/delete'),
    Route(name='securitygroups_delete', pattern='/securitygroups/delete'),
    Route(name='securitygroup_delete', pattern='/securitygroups/{id}/delete'),

It'd be better to stick to the existing pattern for consistency, rather than creating an exception. If it requires refactoring, it can wait until 4.1 release.