A computer-implemented method for parsing a software development kit interface to obtain customer usage, configuration, and security information by applying requests for information to an application programming interface provided by the software development kit interface, comprising: under the control of one or more computer systems configured with executable instructions, loading a library to a security platform, wherein the library is an interface to a remote application programming interface; generating a top-level object of the remote application programming interface, API, the top-level object including authentication credentials, including access keys, for creating a communications channel with the remote API (210; 606), wherein the access keys are configured to be used when authenticating a communication channel with a remote endpoint; responsive to establishment of a communications connection with the remote API using the authentication credentials, executing initial function calls against the interface to the remote API to retrieve reference names of methods for the top-level object and all found objects from the top-level object, wherein a reference name of a retrieved method is a name useable for specifying a future call to a particular function implemented by the remote API; recursively executing subsequent function calls against the interface to the remote API using the reference names (614, 618); recursively retrieving data from each method of the executed subsequent function calls using previously retrieved reference names of said all found objects; storing retrieved data in a data store (216; 622); and providing stored data to an analysis engine configured to analyse said data for vulnerabilities for producing alerts and reports for customer usage, configuration, and security information. under the control of one or more computer systems configured with executable instructions, loading a library to a security platform, wherein the library is an interface to a remote application programming interface; generating a top-level object of the remote application programming interface, API, the top-level object including authentication credentials, including access keys, for creating a communications channel with the remote API (210; 606), wherein the access keys are configured to be used when authenticating a communication channel with a remote endpoint; responsive to establishment of a communications connection with the remote API using the authentication credentials, executing initial function calls against the interface to the remote API to retrieve reference names of methods for the top-level object and all found objects from the top-level object, wherein a reference name of a retrieved method is a name useable for specifying a future call to a particular function implemented by the remote API; recursively executing subsequent function calls against the interface to the remote API using the reference names (614, 618); recursively retrieving data from each method of the executed subsequent function calls using previously retrieved reference names of said all found objects; storing retrieved data in a data store (216; 622); and providing stored data to an analysis engine configured to analyse said data for vulnerabilities for producing alerts and reports for customer usage, configuration, and security information.