Examples
Grab a key and use some of these helpful examples to see how to get started.
Python
Steven Citron-Pousty contributed this example of retrieving all the keys belonging to a specific user. Remember to edit the example and put in your own API Key, Shared Secret, and a valid username in the query example.
import json from json import JSONEncoder import time import hashlib import http.client __author__="scitronpousty" __date__ ="$Jan 11, 2011 10:18:04 AM$" apiKey = "YourAPIKey" sharedSecret = "YourSharedSecret" #Not using because we are only doing read only operations #sandboxAPIKey = #sandboxSharedSecret = endpoint = "api.mashery.com" #sandboxEndpoint = "api.sandbox.mashery.com" path = "/v2/json-rpc/789" #sandboxPath = def buildAuthParams(): """This function takes our API key and shared secret and uses it to create the signature that mashery wants """ authHash = hashlib.md5(); #time.time() gets the current time since the epoch (1970) with decimals seconds temp = str.encode(apiKey + sharedSecret + repr(int(time.time()))) authHash.update(temp) return authHash.hexdigest() if __name__ == "__main__": #make an http connection object pointed at the endpoint conn = http.client.HTTPConnection(endpoint) #This the mashery JSON-RPC query code params = JSONEncoder().encode({'method': "object.query", 'params': ["SELECT name, keys.apikey from applications where username = 'theusernameofyouruser'"], 'id':1}) #Headers required by mashery headers = {"Content-type": "application/json", "Accept": "text/plain", "Content-length": repr(len(params))} #send the whole shebang over to mashery conn.request("POST", path + "?apikey=" + apiKey + "&sig=" + buildAuthParams() , params, headers) resp = conn.getresponse() #response data is a binary string and I want to read it easily responseObject = resp.read().decode() #doing a little pretty formating to get it to look nice on my output terminal print(json.dumps(json.loads(responseObject), sort_keys=True, indent=4)) #just being safe here conn.close()
Docs Navigation
- API Documentation Portal
- IO Docs Definition
- Mashery API Documentation
- Mashery 3.0 API Guide
- Mashery 2.0 API Guide
- OAuth Supporting Methods
- Examples
- JSON RPC
- Authentication
- API Objects
- Fetching Objects
- Query Language
- Creating Objects
- Updating Objects
- Validating Fields
- Deleting Objects
- Applications
- General Object Methods
- Members
- Packages
- Plans
- Package Keys
- Keys
- Developer Classes
- Services
- Roles
- Mashery 2.0 Reporting API Guide
- Event Trigger API
- Differences between Roles and Portal Access Groups
- Managing a Portal Access Group Using Mashery V2 or V3 API
- Mashery Reporting Event Post API Guide
- Tips and Tricks
- Your Portal
- API Traffic Manager
- I/O Docs WSDL requirements