1. A computing device comprising one or more processors; and one or more computer readable media having stored thereon multiple instructions that, when executed by one or more processors, cause the one or more processors to: receive, as one or more parameters of an application programming interface method invoked by a client application, information describing a type registration regarding which an action is being requested by the client application, the type registration describing a particular extension of the functionality of an operating system, the one or more parameters including a type extension identifier that identifies one of multiple type extensions to which the action being requested corresponds, the one or more parameters further including a registration payload that includes the type registration or an identifier of the type registration, the one of the multiple type extensions configured to receive at least one of the one or more parameters; determine, based on the type extension identifier, that the identified one of the multiple type extensions is the one of the multiple type extensions to which the action being requested corresponds; and send the at least one of the one or more parameters, including the registration payload, to the one of the multiple type extensions for the one of the multiple type extensions to perform the action being requested.