A reworked headcanon now that we have new games:
Using a Pokémon to fly between locations requires a licence in most regions, however the criteria needed in order to obtain one varies from region to region.
In most regions, a Flying Licence is obtainable to anyone holding a valid trainer's license, provided they've collected a set number of gym badges. Trainers are also expected to pass a short certification test, which really just confirms they know not to exceed certain altitudes, to avoid flying within the vicinity of an airport, to avoid leaving the region's airspace, and to ensure they're aware they MUST use a domesticated Pokémon.
In Galar and Paldea, a much more thorough (and prohibitively expensive) exam is required to obtain a licence, hence the presence of aerial taxis within these regions.
In Fiore, the rules are the absolute strictest, with Flying permits only being granted to Pokémon Rangers, who also must use a bonded Pokémon. Fiore is also the only region which requires permit holders to contact local air traffic control to avoid collisions.
These restrictions don't apply to the Dragonite Shuttle, since it flies a pre-trained route that's already been cleared by the appropriate authorities, however the Dragonite must wear a tracking device to ensure it doesn't veer off course.
Almia is the only region to allow permit holders to fly on wild Pokémon, however as stated in game this is a privilege only extended to Rangers in the upper echelons of Almia's Pokémon Ranger Union.
Oblivia is a free for all because it's the quickest way to island hop and nobody cares enough to regulate it.
















