Close Menu
SalesforceCodex
    Facebook X (Twitter) Instagram
    Trending
    • 10 Salesforce Chrome Extensions to Boost Your Productivity
    • How to Build a Generic Modal Window in Lightning Web Component
    • Top 10 Salesforce Flow Features of Salesforce Summer ’25
    • Unlock the Power of Vibe Coding in Salesforce
    • How to Implement Dynamic Queueable Chaining in Salesforce Apex
    • How to Implement Basic Queueable Chaining in Salesforce Apex
    • How to Suppress PMD Warnings in Salesforce Apex
    • Top 10 PMD Issues Salesforce Developers Should Focus on in Apex
    Facebook X (Twitter) Instagram
    SalesforceCodex
    Subscribe
    Saturday, June 21
    • Home
    • Architecture
    • Salesforce
      • News
      • Apex
      • Integration
      • Books Testimonial
    • Questions
    • Certification
      • How to Prepare for Salesforce Integration Architect Exam
      • Certification Coupons
    • Integration Posts
    • Downloads
    • About Us
      • Privacy Policy
    SalesforceCodex
    Home»Salesforce»Object Identification using Google Cloud Vision in Salesforce

    Object Identification using Google Cloud Vision in Salesforce

    Dhanik Lal SahniBy Dhanik Lal SahniAugust 9, 2020Updated:January 15, 20252 Comments4 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Object Identification using Google Cloud Vision in Salesforce
    Share
    Facebook Twitter LinkedIn Pinterest Email

    Object Detection is used to locate the presence of objects in the image. We can find the location of the object as well in the image. It can detect a single object as well as multiple objects in the image.

    Image for post

    As an example in the above image, we can get the number of objects in the picture, the classification of the object (cat, dog, duck), and the location of the object.

    Lots of APIs are available for object detection. Here is a list of those top APIs

    • Google CloudVision API
    • Amazon Rekognition
    • IBM Watson Visual Recognition
    • Microsoft Image Processing API
    • Clarifai
    • Imagga

    This post is using Google Cloud Vision API to detect objects in the image. Below steps are required for the Object Detection API call

    • Get Access Token from Google to call API
    • Create Apex class to call API
    • Create an LWC Component to show an object list

    1. Get an Access Token from Google to call the API

    Refer blog Integrate Google API with Salesforce to get an access token for Google Cloud Vision API.

    You need to enable Google Cloud Vision API for access token from https://console.cloud.google.com/apis/library/vision.googleapis.com. Use the below scope in GoogleAuthService class.

    private static string scope='https://www.googleapis.com/auth/cloud-vision';

    2. Create Apex class to call API

    Let us create an apex class to call Google Cloud Vision API. We have to use auth token generated from the above step. We have to get auth token from custom metadata GoogleAuthSetting__mdt before calling API. We are updating this metadata in the previous step after getting the token.

    API Detail

    API Url : https://vision.googleapis.com/v1/images:annotate

    Above API will be called as POST method. For this post, I am using blob image to get brand information. Sample JSON request data will be like this

    {
      "requests": [
        {
          "image": {
            "content": "base64-encoded-image" //This will be content version data
          },
          "features": [
            {
              "maxResults": 10,  // Number of object which will be return
              "type": "OBJECT_LOCALIZATION"
            },
          ]
        }
      ]
    }

    Response data will be like this.

     {
              "mid": "/m/01bqk0",
              "name": "Bicycle wheel",
              "score": 0.93416494,
              "boundingPoly": {
                "normalizedVertices": [
                  {
                    "x": 0.5033941,
                    "y": 0.7553
                  },
                  {
                    "x": 0.6290014,
                    "y": 0.7553
                  },
                  {
                    "x": 0.6290014,
                    "y": 0.9428198
                  },
                  {
                    "x": 0.5033941,
                    "y": 0.9428198
                  }
                ]
              }
            },

    Request, response, and API call will be like the below code. ObjectRecogRequest and ObjectRecogResponse are wrapper classes for the above request and response JSON data.

    Apex Method Detail :

    getAccessToken : This method will get token detail which is generated from step 1 and used in getObjectCases methods.

    getObjectCases: This will get all cases which are for object recognition. This will be used in LWC to show dropdown selection.

    getImage : This will get image information related to case. Image is shown in frame to visualize which image is being processed by API.

    getObjectInformation: This will get objects information by calling Google Cloud Vision API. It will return list of objects in the image.

    ObjectInformation wrapper class list is returned with object name and accuracy score.

    By default, Google Cloud Vision API returns 10 rows. If you need to get more rows then provide maxResults value. This attribute shows how many rows Google API will return.

    3. Create LWC Component to show Image and Object Identification List

    Create LWC component to show and process images. Based on the shown image it will process requests.

    We can create record type in case object to get cases for object recognition. We can process only those records.

    When LWC Component is opened, it will show a list of all cases which is created as Object Recognition record type.

    handleCaseChange : This will call apex method getImage to get image and show that in iframe.

    getObjectDetail: This will call apex method getObjectInformation to get object information and show detail in data table.

    Sample Output

    Object Identification SalesforceCodex

    Demo:

    Reference:

    https://cloud.google.com/vision/docs

    https://cloud.google.com/vision/docs/detecting-logos

    https://developer.salesforce.com/docs/component-library/documentation/en/lwc

    Similar Posts

    • Automating data synchronization between Salesforce and Amazon Seller
    • AWS Signature 4 Signing in Salesforce
    • Download the S3 File in Salesforce using AWS Signature Version 4.0
    • Use Named Credential to Upload File in S3
    apex apex rest cloud vision api google google api google cloud vision image lightning progress bar Lightning web component salesforce
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Previous ArticleDynamic Image Map in Salesforce Lightning
    Next Article Single Row Selection in Lightning Datatable
    Dhanik Lal Sahni
    • Website
    • Facebook
    • X (Twitter)

    With over 18 years of experience in web-based application development, I specialize in Salesforce technology and its ecosystem. My journey has equipped me with expertise in a diverse range of technologies including .NET, .NET Core, MS Dynamics CRM, Azure, Oracle, and SQL Server. I am dedicated to staying at the forefront of technological advancements and continuously researching new developments in the Salesforce realm. My focus remains on leveraging technology to create innovative solutions that drive business success.

    Related Posts

    By Dhanik Lal Sahni9 Mins Read

    10 Salesforce Chrome Extensions to Boost Your Productivity

    June 1, 2025
    By Dhanik Lal Sahni4 Mins Read

    How to Build a Generic Modal Window in Lightning Web Component

    May 26, 2025
    By Dhanik Lal Sahni6 Mins Read

    Top 10 Salesforce Flow Features of Salesforce Summer ’25

    May 11, 2025
    View 2 Comments

    2 Comments

    1. Mohammad on August 3, 2023 3:39 pm

      As Salesforce mentioned that they are deprecating Einstein Object Detection & Image Classification, can we still able to use these APIs for the purpose it meant to be ?

      Reply
      • Dhanik Lal Sahni on August 9, 2023 5:35 pm

        Hello Mohammad,

        No, You can not use Salesfore object detection API now. This post is using Google’s Object Detection API so no issue with this post.

        Thank You,
        Dhanik

        Reply
    Leave A Reply Cancel Reply

    Ranked #1 SALESFORCE DEVELOPER BLOG BY SALESFORCEBEN.COM
    Featured on Top Salesforce Developer Blog By ApexHours
    Recent Posts
    • 10 Salesforce Chrome Extensions to Boost Your Productivity
    • How to Build a Generic Modal Window in Lightning Web Component
    • Top 10 Salesforce Flow Features of Salesforce Summer ’25
    • Unlock the Power of Vibe Coding in Salesforce
    • How to Implement Dynamic Queueable Chaining in Salesforce Apex
    Ranked in Top Salesforce Blog by feedspot.com
    RSS Recent Stories
    • Top 20 Salesforce Data Cloud Interview Questions & Answers for Admins June 5, 2025
    • How to Connect Excel to Salesforce to Manage Your Data and Metadata February 9, 2025
    • Difference Between With Security and Without Security in Apex January 2, 2025
    • Top Reasons to Love Salesforce Trailhead: A Comprehensive Guide December 5, 2024
    • How to Utilize Apex Properties in Salesforce November 3, 2024
    Archives
    Categories
    Tags
    apex (111) apex code best practice (8) apex rest (11) apex trigger best practices (4) architecture (22) Asynchronous apex (9) AWS (5) batch apex (9) batch processing (4) code analysis (3) code optimization (8) custom metadata types (5) design principle (9) flow (15) future method (4) google (6) google api (4) integration (19) integration architecture (6) lighting (8) lightning (65) lightning-combobox (5) lightning-datatable (10) lightning component (31) Lightning web component (63) lwc (52) named credential (8) news (4) optimize apex code (4) optimize apex trigger (3) Permission set (4) pmd (3) Queueable (9) rest api (23) S3 Server (4) salesforce (142) salesforce apex (47) salesforce api (4) salesforce api integration (5) Salesforce Interview Question (4) salesforce news (5) salesforce question (5) solid (6) tooling api (5) Winter 20 (8)

    Get our newsletter

    Want the latest from our blog straight to your inbox? Chucks us your detail and get mail when new post is published.
    * indicates required

    Facebook X (Twitter) Instagram Pinterest YouTube Tumblr LinkedIn Reddit Telegram
    © 2025 SalesforceCodex.com. Designed by Vagmine Cloud Solution.

    Type above and press Enter to search. Press Esc to cancel.

    Ad Blocker Enabled!
    Ad Blocker Enabled!
    Our website is made possible by displaying online advertisements to our visitors. Please support us by disabling your Ad Blocker.