Patent ID: 8782744

Claim:
A computer-implemented method for managing API access, comprising: under the control of one or more computer systems configured with executable instructions, receiving, from a client, a variant of a request through an application programming interface, the application programming interface supporting multiple variants of the request; constructing a request object based at least in part on the variant of the request, the request object having first metadata dynamically identifying a pre-processor to invoke before processing the request; invoking the pre-processor based at least in part on the first metadata; determining, by the pre-processor, whether the client has permission to use the variant of the request; when the pre-processor determines that the client has permission to use the variant of the request: processing the request object; reviewing a plurality of non-public fields contained in the request object; validating the plurality of non-public fields contained in the request object; and forming a return object based at least in part on the variant of the request and the plurality of non-public fields, the return object having a plurality of return fields and second metadata indicating a post-processor to invoke before processing the request; invoking a post-processor based at least in part on the second metadata; processing, by the post-processor, the plurality of return fields to be consistent with the variant of the request; and communicating the plurality of return fields to the client.