SlideShare a Scribd company logo
1 of 32
The tooling Api demystified,
it is not only for developers!
by Doria Hamelryk & Fabrice Challier
#CD22
Who are we?
Fabrice CHALLIER Doria HAMELRYK
Managing Director @Little Chaman
Salesforce Technical Lead
Salesforce Trainer @ISDI (dex450,dex602)
Toulouse, France User Group Community Group Leader
Managing Director @GetMarcel
Salesforce Architect - 15x certified - MVP
Paris, France Women in Tech Community Group Leader
Organisation Team member of :
🇲🇦 North Africa Dreamin’ (Casablanca)
🇫🇷 French Touch Dreamin’ (Paris)
#CD22
● Present the Tooling Api
● Explain how it can be used by Admins
● Show Use Cases and Ready-to-use scripts
Objectives of this session
#CD22
Definition
APIs are a set of functions and procedures that allow an application to query or modify
data from another application without accessing it directly.
Request
Response
What is an API? (Application Programming Interface)
#CD22
Different API for different usage
● Depending on which element you want to work on :
● Many API’s are available for each type of element
Tooling API
Metadata API
Rest API
Soap API
Bulk API
Streaming API
Metadata
Data Event
API’s in the Salesforce World
#CD22
If it’s config or dev,
then it’s Metadata!
(and if it’s related to
records, then it’s not…)
What are Metadata?
#CD22
Metadata API Tooling API (since Spring ‘2013)
available in SOAP only available in REST, SOAP and SOQL
Retrieve results in nodes Retrieve results in list
Used for configuration migration Used for platform for debugging, code coverage,…
Results - Shared info (with Metadata API):
Results - Additional info:
Select
CreatedById, CreatedBy.Name, CreatedDate, fullname, Id, LastModifiedById,
LastModifiedBy.Name, LastModifiedDate, ManageableState, Description,
ErrorDisplayField, ErrorMessage, ValidationName, Active
from ValidationRule
where EntityDefinition.DeveloperName ='Case' and Id='03d3z000000QlbjAAC'
Tooling API Query :
Difference between Metadata API & Tooling API
#CD22
Tooling API
Why and how to use it
#CD22
Useful for developers
● Search Metadata in SOQL
● Enabling debug mode & Debugging
● Test execution and code coverage
analysis
● Class structure analysis
● Configuration modification
● Package generation
● Many more…
Tooling API Usage
Useful for admins
● Naming convention
● Object & Fields description
● Sharing Model analysis
● Wording of Validation Rules
● Layout not assigned
● Object Limits monitoring
● Many more…
#CD22
Workbench Developer Console
Tooling API : query Tools
#CD22
Inspector (chrome extension)
Admin Booster (https://www.adminbooster.com/)
Tooling API : query Tools
#CD22
Tooling API
Use Cases & Script Samples: SOQL
#CD22
select
Id,CreatedBy.Name, CreatedDate, LastModifiedBy.Name, LastModifiedDate,
DeveloperName, EntityDefinition.DeveloperName, Description
from CustomField
“I want to see ALL custom fields created and check if they all have a description.”
Use Case : Custom Fields
#CD22
The EntityDefinition : key for everything
select DeveloperName from CustomField where…
Standard Field?
Then use the ID directly with the Object API
…EntityDefinitionId ='Case’
Custom Field?
Then use the QualifiedApiName with the Object API
…EntityDefinition.QualifiedApiName = ‘MyObject__c’
OR
DeveloperName without ‘__c’
…EntityDefinition.DeveloperName = ‘MyObject’
#CD22
select
DurableId,DeveloperName,description,InternalSharingModel,ExternalSharingModel,Qualifi
edApiName
from EntityDefinition
where PublisherId ='<local>' and qualifiedapiname like '%__c'
“I want to see ALL my custom objects and check best practices related to their name,
description and sharing models”
Use Case : Custom objects definition & sharing
#CD22
select
DurableId,DeveloperName, issearchable, IsReportingEnabled, IsFieldHistoryTracked
from EntityDefinition
where PublisherId ='<local>' and qualifiedapiname like '%__c'
“I want to see on which custom object I can perform searches, reporting and history
tracking”
Use Case : Custom objects search & reporting
#CD22
Select
Id, EntityDefinition.DeveloperName, Active, ValidationName, ErrorDisplayField,
ErrorMessage, Description
from ValidationRule
“I want to see all validation rules, check if they are active or not and if error messages
are homogeneous (wording)”
Use Case : Validation rules definition
#CD22
Select
Id, EntityDefinition.DeveloperName, Active,ValidationName, ErrorDisplayField,
ErrorMessage, Description
from ValidationRule
where ErrorMessage like '%date%'
“I want to retrieve the validation rules having a specific Error Message”
Use Case : Validation rules messages
#CD22
select
Id, Name, TableEnumOrId
from Layout
where Id not in (select LayoutId from ProfileLayout) and layoutType ='Standard'
“I want to list all layout that are not assigned to any profile”
Use Case : Layout assignment
#CD22
select
MasterLabel, ProcessType, RunInMode, Status, Description
from Flow
where Status != 'Obsolete'
“I want to clean up my Automation (and kill Process Builders!)”
Use Case : Automation analysis
#CD22
select
Type, Label, Remaining, Max, EntityDefinitionid
from EntityLimit
where EntityDefinitionid='Account'
“I want to monitor my object limit”
Use Case : Limits monitoring
⚠️ Requires EntityDefinitionId or DurableId filter
#CD22
select
MetadataComponentId, MetadataComponentName, MetadataComponentType,
RefMetadataComponentId, RefMetadataComponentName,RefMetadataComponentType
from MetadataComponentDependency
where MetadataComponentType = 'Layout' and RefMetadataComponentType='CustomField'
“I want to know which custom field is never displayed on layouts”
Use Case : Unused Fields (Step 1 on 3)
Layout ID Field ID
Layout Name Field API
#CD22
select
id, developername, EntityDefinition.QualifiedApiName
from customfield
“I want to know which custom field is never displayed on layouts”
Use Case : Unused Fields (Step 2 on 3)
Field ID Object API
Field API
#CD22
=VLOOKUP(A2;Depend!D:D;1;0)
=VLOOKUP(CELL_WITH_ID_FROM_FIELDS_LIST;TAB_WITH_DEPENDENCIES_LIST!COLUMN_WITH_RefMetadataComponentId;1;0)
“I want to know which custom field is never displayed on layouts”
Use Case : Unused Fields (Step 3 on 3)
One tab with
dependencies list
One tab with fields list
One Vlookup formula
#CD22
Be careful with
MetadataComponentDependency
Never forget Salesforce limits :)
● You can only retrieve 2k records with
your query
● If you have > 2k records,
results will be truncated,
and not necessary to 2k records :)
● You don’t have any warning !
#CD22
select
ApiVersion, Category, DeveloperName, IsReleased, ReleaseLabel,
SupportsRevoke, StepStage, Title, Description
from ReleaseUpdate where IsReleased=false
“I want to monitor all release updates and
check actions that need to be performed”
Use Case : Release updates
#CD22
select
CreatedBy.Name, CreatedDate, Description, EndDate, LicenseType, SandboxInfoId,
SandboxName, source.SandboxName, Status, SystemModstamp from SandboxProcess
“I want to list all my sandboxes and their history (creation, refresh, delete)”
Use Case : Sandbox monitoring
#CD22
Tooling API
Conclusion
#CD22 29
● Tooling API is a powerful tool to retrieve Config and Dev information
● It can be used by anyone having basic knowledge of SOQL
● It’s possible to automate Health Check with the Tooling API
● All capabilities are documented on
https://developer.salesforce.com/docs/atlas.en-
us.234.0.api_tooling.meta/api_tooling/reference_objects_list.htm
Tooling API: Summary
#CD22 30
To go further
Ask help to your developer buddies if you don’t know how to
build your query.
Who knows, he/she could also learn something new :)
Do not hesitate to contact us if you have any question :
Doria Hamelryk : doria.hamelryk@gmail.com
Fabrice Challier : fabricechallier@gmail.com
This presentation and all the queries are available here :
bit.ly/cztooling
#CD22
Thank You
The tooling Api demystified, It is not only for developers, Doria Hamelryk & Fabrice Challier

More Related Content

What's hot

Cheat Sheet: Salesforce Einstein for Customer Service
Cheat Sheet: Salesforce Einstein for Customer ServiceCheat Sheet: Salesforce Einstein for Customer Service
Cheat Sheet: Salesforce Einstein for Customer ServiceIvan Harris
 
OAuth 2.0 with IBM WebSphere DataPower
OAuth 2.0 with IBM WebSphere DataPowerOAuth 2.0 with IBM WebSphere DataPower
OAuth 2.0 with IBM WebSphere DataPowerShiu-Fun Poon
 
Apex code Benchmarking
Apex code BenchmarkingApex code Benchmarking
Apex code BenchmarkingAmit Chaudhary
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework BasicMario Romano
 
Microservices & API Gateways
Microservices & API Gateways Microservices & API Gateways
Microservices & API Gateways Kong Inc.
 
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternAPI Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternVMware Tanzu
 
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...confluent
 
Mastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckMastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckRundeck
 
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트Atlassian 대한민국
 
Software Design Patterns in Laravel by Phill Sparks
Software Design Patterns in Laravel by Phill SparksSoftware Design Patterns in Laravel by Phill Sparks
Software Design Patterns in Laravel by Phill SparksPhill Sparks
 
Introduction to lightning Web Component
Introduction to lightning Web ComponentIntroduction to lightning Web Component
Introduction to lightning Web ComponentMohith Shrivastava
 
Building secure applications with keycloak
Building secure applications with keycloak Building secure applications with keycloak
Building secure applications with keycloak Abhishek Koserwal
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Roy Gilad
 
Consuming Restful APIs using Swagger v2.0
Consuming Restful APIs using Swagger v2.0Consuming Restful APIs using Swagger v2.0
Consuming Restful APIs using Swagger v2.0Pece Nikolovski
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?LunchBadger
 

What's hot (20)

Cheat Sheet: Salesforce Einstein for Customer Service
Cheat Sheet: Salesforce Einstein for Customer ServiceCheat Sheet: Salesforce Einstein for Customer Service
Cheat Sheet: Salesforce Einstein for Customer Service
 
OAuth 2.0 with IBM WebSphere DataPower
OAuth 2.0 with IBM WebSphere DataPowerOAuth 2.0 with IBM WebSphere DataPower
OAuth 2.0 with IBM WebSphere DataPower
 
Apex code Benchmarking
Apex code BenchmarkingApex code Benchmarking
Apex code Benchmarking
 
Using Forms in Share
Using Forms in ShareUsing Forms in Share
Using Forms in Share
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework Basic
 
Microservices & API Gateways
Microservices & API Gateways Microservices & API Gateways
Microservices & API Gateways
 
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternAPI Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
 
Building APIs with Mule and Spring Boot
Building APIs with Mule and Spring BootBuilding APIs with Mule and Spring Boot
Building APIs with Mule and Spring Boot
 
Making of Trailhead
Making of TrailheadMaking of Trailhead
Making of Trailhead
 
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...
Building an Enterprise Eventing Framework (Bryan Zelle, Centene; Neil Buesing...
 
Mastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckMastering Secrets Management in Rundeck
Mastering Secrets Management in Rundeck
 
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트
[AIS 2018] [Team Tools_Basic] Confluence는 어떻게 쓰나요 - 모우소프트
 
Software Design Patterns in Laravel by Phill Sparks
Software Design Patterns in Laravel by Phill SparksSoftware Design Patterns in Laravel by Phill Sparks
Software Design Patterns in Laravel by Phill Sparks
 
Introduction to lightning Web Component
Introduction to lightning Web ComponentIntroduction to lightning Web Component
Introduction to lightning Web Component
 
Building secure applications with keycloak
Building secure applications with keycloak Building secure applications with keycloak
Building secure applications with keycloak
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)
 
Deep Dive into Apex Triggers
Deep Dive into Apex TriggersDeep Dive into Apex Triggers
Deep Dive into Apex Triggers
 
Consuming Restful APIs using Swagger v2.0
Consuming Restful APIs using Swagger v2.0Consuming Restful APIs using Swagger v2.0
Consuming Restful APIs using Swagger v2.0
 
Drools rule Concepts
Drools rule ConceptsDrools rule Concepts
Drools rule Concepts
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?
 

Similar to The tooling Api demystified, It is not only for developers, Doria Hamelryk & Fabrice Challier

Apex Enterprise Patterns: Building Strong Foundations
Apex Enterprise Patterns: Building Strong FoundationsApex Enterprise Patterns: Building Strong Foundations
Apex Enterprise Patterns: Building Strong FoundationsSalesforce Developers
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Ukraine
 
MongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using GoCloudOps2005
 
DQ Product Usage Methodology Highlights_v6_ltd
DQ Product Usage Methodology Highlights_v6_ltdDQ Product Usage Methodology Highlights_v6_ltd
DQ Product Usage Methodology Highlights_v6_ltdDigendra Vir Singh (DV)
 
Suite Script 2.0 API Basics
Suite Script 2.0 API BasicsSuite Script 2.0 API Basics
Suite Script 2.0 API BasicsJimmy Butare
 
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicDavid Solivan
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI TestingShai Raiten
 
AppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Platform
 
Spectacular Specs and how to write them!
Spectacular Specs and how to write them!Spectacular Specs and how to write them!
Spectacular Specs and how to write them!YeurDreamin'
 
Performance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingPerformance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingAkshay Patole
 
Building strong foundations apex enterprise patterns
Building strong foundations apex enterprise patternsBuilding strong foundations apex enterprise patterns
Building strong foundations apex enterprise patternsandyinthecloud
 
Cucumber - use it to describe user stories and acceptance criterias
Cucumber - use it to describe user stories and acceptance criteriasCucumber - use it to describe user stories and acceptance criterias
Cucumber - use it to describe user stories and acceptance criteriasGeison Goes
 
Node.js for enterprise - JS Conference
Node.js for enterprise - JS ConferenceNode.js for enterprise - JS Conference
Node.js for enterprise - JS ConferenceTimur Shemsedinov
 
Automatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesAutomatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesGaston Cruz
 
Evolving your Data Access with MongoDB Stitch - Drew Di Palma
Evolving your Data Access with MongoDB Stitch - Drew Di PalmaEvolving your Data Access with MongoDB Stitch - Drew Di Palma
Evolving your Data Access with MongoDB Stitch - Drew Di PalmaMongoDB
 
Django best practices for logging and signals
Django best practices for logging and signals Django best practices for logging and signals
Django best practices for logging and signals flywindy
 

Similar to The tooling Api demystified, It is not only for developers, Doria Hamelryk & Fabrice Challier (20)

Apex Enterprise Patterns: Building Strong Foundations
Apex Enterprise Patterns: Building Strong FoundationsApex Enterprise Patterns: Building Strong Foundations
Apex Enterprise Patterns: Building Strong Foundations
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
 
Coding Naked 2023
Coding Naked 2023Coding Naked 2023
Coding Naked 2023
 
MongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDB
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
 
DQ Product Usage Methodology Highlights_v6_ltd
DQ Product Usage Methodology Highlights_v6_ltdDQ Product Usage Methodology Highlights_v6_ltd
DQ Product Usage Methodology Highlights_v6_ltd
 
Suite Script 2.0 API Basics
Suite Script 2.0 API BasicsSuite Script 2.0 API Basics
Suite Script 2.0 API Basics
 
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
 
Cucumber_Training_ForQA
Cucumber_Training_ForQACucumber_Training_ForQA
Cucumber_Training_ForQA
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI Testing
 
AppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Blue Print Design Guidelines
AppliFire Blue Print Design Guidelines
 
Tdd,Ioc
Tdd,IocTdd,Ioc
Tdd,Ioc
 
Spectacular Specs and how to write them!
Spectacular Specs and how to write them!Spectacular Specs and how to write them!
Spectacular Specs and how to write them!
 
Performance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingPerformance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity Testing
 
Building strong foundations apex enterprise patterns
Building strong foundations apex enterprise patternsBuilding strong foundations apex enterprise patterns
Building strong foundations apex enterprise patterns
 
Cucumber - use it to describe user stories and acceptance criterias
Cucumber - use it to describe user stories and acceptance criteriasCucumber - use it to describe user stories and acceptance criterias
Cucumber - use it to describe user stories and acceptance criterias
 
Node.js for enterprise - JS Conference
Node.js for enterprise - JS ConferenceNode.js for enterprise - JS Conference
Node.js for enterprise - JS Conference
 
Automatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos TabularesAutomatizacion de Procesos en Modelos Tabulares
Automatizacion de Procesos en Modelos Tabulares
 
Evolving your Data Access with MongoDB Stitch - Drew Di Palma
Evolving your Data Access with MongoDB Stitch - Drew Di PalmaEvolving your Data Access with MongoDB Stitch - Drew Di Palma
Evolving your Data Access with MongoDB Stitch - Drew Di Palma
 
Django best practices for logging and signals
Django best practices for logging and signals Django best practices for logging and signals
Django best practices for logging and signals
 

More from CzechDreamin

Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...CzechDreamin
 
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...CzechDreamin
 
How we should include Devops Center to get happy developers?, David Fernandez...
How we should include Devops Center to get happy developers?, David Fernandez...How we should include Devops Center to get happy developers?, David Fernandez...
How we should include Devops Center to get happy developers?, David Fernandez...CzechDreamin
 
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...CzechDreamin
 
Architecting for Analytics, Aaron Crear
Architecting for Analytics, Aaron CrearArchitecting for Analytics, Aaron Crear
Architecting for Analytics, Aaron CrearCzechDreamin
 
Ape to API, Filip Dousek
Ape to API, Filip DousekApe to API, Filip Dousek
Ape to API, Filip DousekCzechDreamin
 
Push Upgrades, The last mile of Salesforce DevOps, Manuel Moya
Push Upgrades, The last mile of Salesforce DevOps, Manuel MoyaPush Upgrades, The last mile of Salesforce DevOps, Manuel Moya
Push Upgrades, The last mile of Salesforce DevOps, Manuel MoyaCzechDreamin
 
How do you know you’re solving the right problem? Design Thinking for Salesfo...
How do you know you’re solving the right problem? Design Thinking for Salesfo...How do you know you’re solving the right problem? Design Thinking for Salesfo...
How do you know you’re solving the right problem? Design Thinking for Salesfo...CzechDreamin
 
ChatGPT … How Does it Flow?, Mark Jones
ChatGPT … How Does it Flow?, Mark JonesChatGPT … How Does it Flow?, Mark Jones
ChatGPT … How Does it Flow?, Mark JonesCzechDreamin
 
Real-time communication with Account Engagement (Pardot). Marketers meet deve...
Real-time communication with Account Engagement (Pardot). Marketers meet deve...Real-time communication with Account Engagement (Pardot). Marketers meet deve...
Real-time communication with Account Engagement (Pardot). Marketers meet deve...CzechDreamin
 
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...CzechDreamin
 
Sales methodology for Salesforce Opportunity, Georgy Avilov
Sales methodology for Salesforce Opportunity, Georgy AvilovSales methodology for Salesforce Opportunity, Georgy Avilov
Sales methodology for Salesforce Opportunity, Georgy AvilovCzechDreamin
 
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...CzechDreamin
 
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...CzechDreamin
 
No Such Thing as Best Practice in Design, Nati Asher and Pat Fragoso
No Such Thing as Best Practice in Design, Nati Asher and Pat FragosoNo Such Thing as Best Practice in Design, Nati Asher and Pat Fragoso
No Such Thing as Best Practice in Design, Nati Asher and Pat FragosoCzechDreamin
 
Why do you Need to Migrate to Salesforce Flow?, Andrew Cook
Why do you Need to Migrate to Salesforce Flow?, Andrew CookWhy do you Need to Migrate to Salesforce Flow?, Andrew Cook
Why do you Need to Migrate to Salesforce Flow?, Andrew CookCzechDreamin
 
Be kind to your future admin self, Silvia Denaro & Nathaniel Sombu
Be kind to your future admin self, Silvia Denaro & Nathaniel SombuBe kind to your future admin self, Silvia Denaro & Nathaniel Sombu
Be kind to your future admin self, Silvia Denaro & Nathaniel SombuCzechDreamin
 
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...CzechDreamin
 
The minimum-profile approach – the modern way to design an efficient security...
The minimum-profile approach – the modern way to design an efficient security...The minimum-profile approach – the modern way to design an efficient security...
The minimum-profile approach – the modern way to design an efficient security...CzechDreamin
 
Restriction Rules – The Whole Picture, Louise Lockie
Restriction Rules – The Whole Picture, Louise LockieRestriction Rules – The Whole Picture, Louise Lockie
Restriction Rules – The Whole Picture, Louise LockieCzechDreamin
 

More from CzechDreamin (20)

Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
Salesforce Forecasting: Evolution, Implementation and Best Practices, Christi...
 
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...
Supercharge Salesforce Marketing Cloud: The Ultimate Apps Guide, Cyril Louis ...
 
How we should include Devops Center to get happy developers?, David Fernandez...
How we should include Devops Center to get happy developers?, David Fernandez...How we should include Devops Center to get happy developers?, David Fernandez...
How we should include Devops Center to get happy developers?, David Fernandez...
 
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...
Streamline Your Integration with Salesforce’s Composite API: A Consultant’s G...
 
Architecting for Analytics, Aaron Crear
Architecting for Analytics, Aaron CrearArchitecting for Analytics, Aaron Crear
Architecting for Analytics, Aaron Crear
 
Ape to API, Filip Dousek
Ape to API, Filip DousekApe to API, Filip Dousek
Ape to API, Filip Dousek
 
Push Upgrades, The last mile of Salesforce DevOps, Manuel Moya
Push Upgrades, The last mile of Salesforce DevOps, Manuel MoyaPush Upgrades, The last mile of Salesforce DevOps, Manuel Moya
Push Upgrades, The last mile of Salesforce DevOps, Manuel Moya
 
How do you know you’re solving the right problem? Design Thinking for Salesfo...
How do you know you’re solving the right problem? Design Thinking for Salesfo...How do you know you’re solving the right problem? Design Thinking for Salesfo...
How do you know you’re solving the right problem? Design Thinking for Salesfo...
 
ChatGPT … How Does it Flow?, Mark Jones
ChatGPT … How Does it Flow?, Mark JonesChatGPT … How Does it Flow?, Mark Jones
ChatGPT … How Does it Flow?, Mark Jones
 
Real-time communication with Account Engagement (Pardot). Marketers meet deve...
Real-time communication with Account Engagement (Pardot). Marketers meet deve...Real-time communication with Account Engagement (Pardot). Marketers meet deve...
Real-time communication with Account Engagement (Pardot). Marketers meet deve...
 
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...
Black Hat Session: Exploring and Exploiting Aura based Experiences, Christian...
 
Sales methodology for Salesforce Opportunity, Georgy Avilov
Sales methodology for Salesforce Opportunity, Georgy AvilovSales methodology for Salesforce Opportunity, Georgy Avilov
Sales methodology for Salesforce Opportunity, Georgy Avilov
 
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...
5 key ideas for robust and flexible REST API integrations with Apex, Lucian M...
 
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...
Report & Dashboard REST API : Get your report accessible anywhere !, Romain Q...
 
No Such Thing as Best Practice in Design, Nati Asher and Pat Fragoso
No Such Thing as Best Practice in Design, Nati Asher and Pat FragosoNo Such Thing as Best Practice in Design, Nati Asher and Pat Fragoso
No Such Thing as Best Practice in Design, Nati Asher and Pat Fragoso
 
Why do you Need to Migrate to Salesforce Flow?, Andrew Cook
Why do you Need to Migrate to Salesforce Flow?, Andrew CookWhy do you Need to Migrate to Salesforce Flow?, Andrew Cook
Why do you Need to Migrate to Salesforce Flow?, Andrew Cook
 
Be kind to your future admin self, Silvia Denaro & Nathaniel Sombu
Be kind to your future admin self, Silvia Denaro & Nathaniel SombuBe kind to your future admin self, Silvia Denaro & Nathaniel Sombu
Be kind to your future admin self, Silvia Denaro & Nathaniel Sombu
 
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...
Monitoring Automation Performance in Marketing Cloud Engagement, Daniela Vrbk...
 
The minimum-profile approach – the modern way to design an efficient security...
The minimum-profile approach – the modern way to design an efficient security...The minimum-profile approach – the modern way to design an efficient security...
The minimum-profile approach – the modern way to design an efficient security...
 
Restriction Rules – The Whole Picture, Louise Lockie
Restriction Rules – The Whole Picture, Louise LockieRestriction Rules – The Whole Picture, Louise Lockie
Restriction Rules – The Whole Picture, Louise Lockie
 

Recently uploaded

AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 

Recently uploaded (20)

AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 

The tooling Api demystified, It is not only for developers, Doria Hamelryk & Fabrice Challier

  • 1. The tooling Api demystified, it is not only for developers! by Doria Hamelryk & Fabrice Challier
  • 2. #CD22 Who are we? Fabrice CHALLIER Doria HAMELRYK Managing Director @Little Chaman Salesforce Technical Lead Salesforce Trainer @ISDI (dex450,dex602) Toulouse, France User Group Community Group Leader Managing Director @GetMarcel Salesforce Architect - 15x certified - MVP Paris, France Women in Tech Community Group Leader Organisation Team member of : 🇲🇦 North Africa Dreamin’ (Casablanca) 🇫🇷 French Touch Dreamin’ (Paris)
  • 3. #CD22 ● Present the Tooling Api ● Explain how it can be used by Admins ● Show Use Cases and Ready-to-use scripts Objectives of this session
  • 4. #CD22 Definition APIs are a set of functions and procedures that allow an application to query or modify data from another application without accessing it directly. Request Response What is an API? (Application Programming Interface)
  • 5. #CD22 Different API for different usage ● Depending on which element you want to work on : ● Many API’s are available for each type of element Tooling API Metadata API Rest API Soap API Bulk API Streaming API Metadata Data Event API’s in the Salesforce World
  • 6. #CD22 If it’s config or dev, then it’s Metadata! (and if it’s related to records, then it’s not…) What are Metadata?
  • 7. #CD22 Metadata API Tooling API (since Spring ‘2013) available in SOAP only available in REST, SOAP and SOQL Retrieve results in nodes Retrieve results in list Used for configuration migration Used for platform for debugging, code coverage,… Results - Shared info (with Metadata API): Results - Additional info: Select CreatedById, CreatedBy.Name, CreatedDate, fullname, Id, LastModifiedById, LastModifiedBy.Name, LastModifiedDate, ManageableState, Description, ErrorDisplayField, ErrorMessage, ValidationName, Active from ValidationRule where EntityDefinition.DeveloperName ='Case' and Id='03d3z000000QlbjAAC' Tooling API Query : Difference between Metadata API & Tooling API
  • 9. #CD22 Useful for developers ● Search Metadata in SOQL ● Enabling debug mode & Debugging ● Test execution and code coverage analysis ● Class structure analysis ● Configuration modification ● Package generation ● Many more… Tooling API Usage Useful for admins ● Naming convention ● Object & Fields description ● Sharing Model analysis ● Wording of Validation Rules ● Layout not assigned ● Object Limits monitoring ● Many more…
  • 11. #CD22 Inspector (chrome extension) Admin Booster (https://www.adminbooster.com/) Tooling API : query Tools
  • 12. #CD22 Tooling API Use Cases & Script Samples: SOQL
  • 13. #CD22 select Id,CreatedBy.Name, CreatedDate, LastModifiedBy.Name, LastModifiedDate, DeveloperName, EntityDefinition.DeveloperName, Description from CustomField “I want to see ALL custom fields created and check if they all have a description.” Use Case : Custom Fields
  • 14. #CD22 The EntityDefinition : key for everything select DeveloperName from CustomField where… Standard Field? Then use the ID directly with the Object API …EntityDefinitionId ='Case’ Custom Field? Then use the QualifiedApiName with the Object API …EntityDefinition.QualifiedApiName = ‘MyObject__c’ OR DeveloperName without ‘__c’ …EntityDefinition.DeveloperName = ‘MyObject’
  • 15. #CD22 select DurableId,DeveloperName,description,InternalSharingModel,ExternalSharingModel,Qualifi edApiName from EntityDefinition where PublisherId ='<local>' and qualifiedapiname like '%__c' “I want to see ALL my custom objects and check best practices related to their name, description and sharing models” Use Case : Custom objects definition & sharing
  • 16. #CD22 select DurableId,DeveloperName, issearchable, IsReportingEnabled, IsFieldHistoryTracked from EntityDefinition where PublisherId ='<local>' and qualifiedapiname like '%__c' “I want to see on which custom object I can perform searches, reporting and history tracking” Use Case : Custom objects search & reporting
  • 17. #CD22 Select Id, EntityDefinition.DeveloperName, Active, ValidationName, ErrorDisplayField, ErrorMessage, Description from ValidationRule “I want to see all validation rules, check if they are active or not and if error messages are homogeneous (wording)” Use Case : Validation rules definition
  • 18. #CD22 Select Id, EntityDefinition.DeveloperName, Active,ValidationName, ErrorDisplayField, ErrorMessage, Description from ValidationRule where ErrorMessage like '%date%' “I want to retrieve the validation rules having a specific Error Message” Use Case : Validation rules messages
  • 19. #CD22 select Id, Name, TableEnumOrId from Layout where Id not in (select LayoutId from ProfileLayout) and layoutType ='Standard' “I want to list all layout that are not assigned to any profile” Use Case : Layout assignment
  • 20. #CD22 select MasterLabel, ProcessType, RunInMode, Status, Description from Flow where Status != 'Obsolete' “I want to clean up my Automation (and kill Process Builders!)” Use Case : Automation analysis
  • 21. #CD22 select Type, Label, Remaining, Max, EntityDefinitionid from EntityLimit where EntityDefinitionid='Account' “I want to monitor my object limit” Use Case : Limits monitoring ⚠️ Requires EntityDefinitionId or DurableId filter
  • 22. #CD22 select MetadataComponentId, MetadataComponentName, MetadataComponentType, RefMetadataComponentId, RefMetadataComponentName,RefMetadataComponentType from MetadataComponentDependency where MetadataComponentType = 'Layout' and RefMetadataComponentType='CustomField' “I want to know which custom field is never displayed on layouts” Use Case : Unused Fields (Step 1 on 3) Layout ID Field ID Layout Name Field API
  • 23. #CD22 select id, developername, EntityDefinition.QualifiedApiName from customfield “I want to know which custom field is never displayed on layouts” Use Case : Unused Fields (Step 2 on 3) Field ID Object API Field API
  • 24. #CD22 =VLOOKUP(A2;Depend!D:D;1;0) =VLOOKUP(CELL_WITH_ID_FROM_FIELDS_LIST;TAB_WITH_DEPENDENCIES_LIST!COLUMN_WITH_RefMetadataComponentId;1;0) “I want to know which custom field is never displayed on layouts” Use Case : Unused Fields (Step 3 on 3) One tab with dependencies list One tab with fields list One Vlookup formula
  • 25. #CD22 Be careful with MetadataComponentDependency Never forget Salesforce limits :) ● You can only retrieve 2k records with your query ● If you have > 2k records, results will be truncated, and not necessary to 2k records :) ● You don’t have any warning !
  • 26. #CD22 select ApiVersion, Category, DeveloperName, IsReleased, ReleaseLabel, SupportsRevoke, StepStage, Title, Description from ReleaseUpdate where IsReleased=false “I want to monitor all release updates and check actions that need to be performed” Use Case : Release updates
  • 27. #CD22 select CreatedBy.Name, CreatedDate, Description, EndDate, LicenseType, SandboxInfoId, SandboxName, source.SandboxName, Status, SystemModstamp from SandboxProcess “I want to list all my sandboxes and their history (creation, refresh, delete)” Use Case : Sandbox monitoring
  • 29. #CD22 29 ● Tooling API is a powerful tool to retrieve Config and Dev information ● It can be used by anyone having basic knowledge of SOQL ● It’s possible to automate Health Check with the Tooling API ● All capabilities are documented on https://developer.salesforce.com/docs/atlas.en- us.234.0.api_tooling.meta/api_tooling/reference_objects_list.htm Tooling API: Summary
  • 30. #CD22 30 To go further Ask help to your developer buddies if you don’t know how to build your query. Who knows, he/she could also learn something new :) Do not hesitate to contact us if you have any question : Doria Hamelryk : doria.hamelryk@gmail.com Fabrice Challier : fabricechallier@gmail.com This presentation and all the queries are available here : bit.ly/cztooling