About Cognizant Salesforce Practice
projects in 40
Over $26 billion
Founded in 1994
8+ Years as Partner
1 of 18 Global Strategic Sis
425+ Salesforce projects delivered
800+/500+ Salesforce Trained /
Why Node.js ?
•Very popular, simple, yet powerful script
•Mostly used for developing high performance network applications
• With help of many available node modules, web application can be created. We will
be using “express”
Why Heroku ?
• Is leading platform as a service
•Supports many programming languages like ruby, java, php, scala, python, node.js
•Owned by Salesforce
•Heroku connect (easily connect Salesforce with applications hosted on Heroku )
mobile first projects on the web
• Open source project by twitter
Champion of the Show – Tooling API
•Released in spring 13
• Provides REST and SOAP based interface to help creating custom development
•Supports create, update and delete apex classes, triggers, visualforce pages and
• Getting debug logs, heap dump and symbol tables
• Still in infancy, like other Salesforce APIs this is growing with each release
Why do we need Tooling API
• Force.com developer community is growing fast like Salesforce itself
• Many organizations are looking for custom functionalities around development tools
to follow their standards
• Like any popular programming language, it very important to “make developers
•Tooling API opens door for creating beautiful development tools which will make
development efficient and easy
• List of Logs
– SELECT Id,LogUserId FROM ApexLog
• “SymbolTable” is element in JSON returned when we read resource Body
•To make editor more useful and professional, we can use free Library of Online
Editor – Ace
Complete Code and Demo URL
•Demo - https://toolingapi.herokuapp.com/
•Demo with Ace - https://dreamforce14.herokuapp.com/
• Git (simple editor) with Heroku 1 button –
• Git (with ace) with Heroku 1 button –
•Tooling API Guide
• Create Node.js application Using Eclipse and deploy to Heroku (Video Tutorial)
Tooling API – Can be considered as a new Component added in REST API.
Tooling API is exposed as REST as well SOAP API.
How Tooling API is different than Metadata API ?
Metadata API is SOAP based which is used for deployment and Metadata related components Whereas Tooling API is used to create development related components like Apex, Visualforce Page etc.
The real magic is what this API brings in terms of the tasks and information around authoring and executing Apex and Visualforce. Such as Debug logs, Heap dumps and Symbol Tables!
A Symbol Table breaks down the code you write and gives you a kind of analytics over your code. Listing all the properties methods defined and also