Gateway custom directives?

Hey everybody,
Is it possible to write a custom directive on the subgraph that I could look for on the gateway and inject code?

Basically I’d like to do something like

type Query {
  userById(id: ID!): User @customDirective

and then somewhere in the Gateway (we’re not on Router yet), intercept the request before it hits the subgraph, peek for my custom directive, and then run some code. My use case is that we’re trying to migrate between systems and some operations take in the id from one system but the subgraph I’d like to migrate them to don’t know that id and have another id. I’d like to intercept the request and translate the ids before it hits the subgraph at the Gateway level.
Is this possible?