About 2 weeks ago I asked #ChatGPT to help me to build a browser extension to call OpenAI’s APIs…in about 1.5 hours I packed a working extension, with a save of about 2/3 hours!
After few questions it gave me the whole extension code, comprised of UI interface, options, manifest and stuff.
The code was not working as output but ChatGPT, it needs modifications and enhancements, but it actually helped me delivering in 1/3 of the time…after that, I coded few other hours because I’m a nerd 🤓 and I wanted to make it easy but complete.
I’ve just published the extension on the Chrome Web Store, have a look and let me know what you think on my social channels!
📣 It’s with great pleasure that I’m announcing that ORGanizer Connector has successfully passed the AppExchange security review and it will soon be publicly listedit’s just been publicly listed!
What’s ORGanizer Connector?
ORGanizer Connector is a free AppExchange app that can be freely installed on any org type (production, sandbox or developer edition).
The app usage is really simple:
manually create Backup records that contains one or more credentials (Backup Items) whose secrets (password and token) are encrypted with a key stored in the main Backup record (which only who has access to the record can get)
massively import ORGanizer for Salesforce backups to automatically create Backup records using ORGanizer for Salesforce backup files
Each Backup can be shared using Salesforce standard sharing model, so org users can see only the record they are allowed to access and nothing more (we suggest a Private sharing model extended with sharing rules or manual sharing)
The package exposes a couple of REST APIs to let external applications integrate
By having access to a Backup record, you can use the Send Secret by Email button to receive the encryption secret by mail: this secret will be used to decrypt the secrets using the Reveal Password & Token button on the Backup Item record or using the ORGanizer for Salesforce native integration (for Full PRO and Team users only), or creating your own integration following the Github repo example
Is it really free?
The app is absolutely free 👌
If you want to use the ORGanizer for Salesforce native integration you need a Full PROor Team license, though, but for companies it can be a life saver!
Open the Options page (right click on ORGanizer icon and select Options)
Select the Import/Export tab
In the ORGanizer Connector (PRO) section select a connection (i.e. a login already stored on ORGanizer that lets you login to the org where ORGanizer Connector is installed…I suggest using an OAuth login)
Provided org can be a production org, a sandbox org or a Developer Edition org, no limitations!
Select a Backup record and click the Get Backup button
Remember: you need to get the Backup’s Secret using the Send Secret by Email button on the Backup record
Select the logins you want to be loaded into ORGanizer for Salesforce extension
Select a login group already on your extension or create a new one and click the Import Logins button
If you import a login that is already on ORGanizer (username is the unique key) the login will simply be updated with the new passoword and token
Have a look at the video below to have a glimpse of how simple is ORGanizer for Salesforce’s Connector user experience:
When will ORGanizer Connector be available to install from AppExchange?
UPDATE: The package has just been listed and is available from this 🔗 AppExchangelink.
We hope to be ready to publish the listing within Christmas 2022 alogn with an updated version of ORGanizer for Salesforce extension that will enable the native integration for PRO users.
DevOps Center is IMHO one of the most anticipated tools that we, the community of Salesforce professionals, were waiting since ages 👴
This gap has been filled in the years by many amazing products like Copado, Flosum, Gearset, AutoRABIT, Blue Canvas, Prodly or Opsera to name a few, but finally a Salesforce branded tool has just born to overcome many of the difficulties with Change Sets.
DevOps Center is a valid alternative to organize your work, track changes automatically, integrate seamlessly with GitHub (other GIT providers coming soon), and deploy updates easily with clicks: developers who are used to work on Git can still go on with it as DevOps center automatically updates its UI based on Git activity and admins can still participate in tracking changes on Git using clicks and not command line.
DevOps Center is available in any production org with Professional, Enterprise, or Unlimited Edition, or a Developer Edition org…so you can get your hands dirty!
We talked about my career path, what being a Salesforce MVP means and what I believe our amazing Trailblazer Community and Salesforce ecosystem will evolve in the next years.
This is the time of the year when a new release is about to arise from the epic forges of the Salesforce laboratories, where magic spells and powerful artifacts are built!
Here are the key dates to be considered:
December 12nd: you can get your own pre-release org to test the new features (use this link)
December 21st: release notes will be available on the help site(use this link)
January 6th: preview sandboxes gets the new release (for more info about how to handle sandboxes previews have a loog at this site) The same days new Trailhead content will be published to handle your certification maintenance
January 10th: overview content is released to have a sneak peek of what’s new (e.g. have a look at the release in the box site, but theGet Ready for Releasechapter on the release note should have all the links)
January 13rd, February 3rd, February 7th: Spring ’23 comes to all orgs, check the maintenance calendar to see which instances comes first!
Seeing a lot of surprise around #chatgpt and wanted to do my own test…
What is ChatGOPT? According to the main site “(…) ChatGPT (…) [is a trained IA that, ndr] interacts in a conversational way. The dialogue format makes it possible for ChatGPT to answer followup questions, admit its mistakes, challenge incorrect premises, and reject inappropriate requests.“
In 2 words, you make a question and ChatGPT tries its best to respond you via text, you can even ask it to write some coding! I asked “write a bubble sort algorithm in Salesforce Apex that sorts a Contact array based on Name field length“ Which ok, it’s not the whole codebase of the Hubble Telescope but so far this is the result:
📣Announcement to all coders: prepare to change your job 🤣🤣🤣
A new AppExchange app by WebResults (Engineering Group)
Question: What happens if you put a messy Salesforce MVP in charge of the Innovation Team of WebResults?
Answer: a lot of mess for sure, but also funny stuff!
TL;DRRequest Loop is a new free AppExchange app delivered by the Innovation Team from WebResults to help in Salesforce callouts and callins development/debugging.
What is WebResults’ Innovation Team?
I work in WebResults since 2009, when I first moved my steps into the Salesforce world, starting from junior developer till my current position as “Salesforce Solutions” Unit Manager (soon to be called “Innovation Team”).
We are a team of passionate Salesforce professionals who struggle to keep up with the technological changes in the Salesforce ecosystem and try to move our company forward…we are a sort of R&D team.
As far as I’ve seen during the past years, this is not obvious for a big company, whose people are focused on the delivery, to keep a group of people focused on innovation and research…that’s why I’m really happy to do this job!
What do we do?
Professional services: sometimes we are called as firefighters by our colleagues when needed to help with difficult tasks or technical issues
Innovation tours: we plan meetings with our customers to show off new features or products
Knowledge Hub: we try to keep track of diverse Salesforce related knowledge docs and best practices for the benefit of all WebResults
Evangelization: we struggle to keep the company technologically engaged and updated
Creative app development: is there a problem we have solved in a creative way or that can “cross-project” benefit? let’s package it and create a new app for the whole company and Salesforce Ohana!
detect SOAP callouts request body (as you know, Salesforce doesn’t let you get the full body of an Apex SOAP request)
simulate REST/SOAP callouts from within Salesforce boundaries (i.e. coming from Salesforce IPs)
create a bin that can receive callins from an external system within Salesforce bounds in order to get what’s going on (again, it’s difficult to debug an Apex SOAP callin)
Keep everything within Salesforce boundaries (it shoulnd’t be done, but often sandboxes use real data and it’s not good to send business data in unsecure/untrusted clouds)
Request Loop is a free tool meant for developers who want to debug webservice communications both inbound and outbound. This tool has been imagined as a quick disposal package that anyone can install in a DE org or a sandbox (even production but it is unlikely and not suggested to debug directly in production), use until necessary and then uninstall to clean up everything.
This package is composed by 2 features:
Request Bin: an inbound Apex webservice that can receive any supported HTTP call (REST or SOAP) and log it for further analysis. This tool can also simulate the response of a valid service (just like the famous Requstb.in online service). Imagine you need to get the SOAP payload of an Apex webservice: no Salesforce tool is available for this porpoise and with Request Loop you can inspect the content message on the fly safely.
Request Client: a tool to send outbound callouts from Salesforce to outside systems. This tool can be used to simulate an external system call from within Salesforce to test a service without the need of a complete Apex implementation.
A Request Bin is simply a record on the Request Bin object definition which handles:
Request bin’s name (which identifies the service URL to point your external system to)
A valid HTTP response code
Optional response headers
Optional response body
Once you have exposed your bin to the world (by calling the Apex webservice with a valid session token or publishing it inside a public community/site) you can call it from an external system and analyze/debug the requests stored on Request records (request bodies are stored on Files attached to the Request record).
Easy as 1-2-3 or a.b.c…you tell me!
Request Client
Now that we have a configured Request Bin that can take any incoming request, we’ll have a look at the Request Client too that can generate a callout by hand. Click on the Home tab of the Request Loop app:
You can configure:
Supported HTTP method (Salesforce supports a sub-set of HTTP methods, GET / PATCH / PUT / POST / DELETE)
Request URL, which helps you with an autocomplete behavior for Named Credentials, otherwise you can set your own custom URL (remember to add the Remote Site configuration to enable that specific endpoint)
Request headers, with an autocomplete features for the main standard headers (the “Content-Type” header has an autocomplete behavior for the value as well, showing the main standard content types)
the Request body
Click the Send button and you’ll get response’s body and headers:
Use the Download Body link to download a file with the response body on it.
Finally using the Recent Requests tab you can get a list of the last requests done and send them again (info are stored on the local storage):