Setup
$ npm install jsforce
Example
const jsforce = require('jsforce');
const conn = new jsforce.Connection();
await conn.login('username@domain.com', 'password')
const res = await conn.query('SELECT Id, Name FROM Account')
console.log(res)
Example
<!DOCTYPE html>
<html>
<head>
<script src="/?originalUrl=https%3A%2F%2Fjsforce.github.io%2F%26quot%3Bhttps%3A%2F%2Fcdn.jsdelivr.net%2Fnpm%2Fjsforce%403.2.2%2Fdist%2Fjsforce.min.js%26quot%3B%26gt%3B%26lt%3B%2Fscript%26gt%3B%2520%2520%26lt%3Bscript%26gt%3B%2520%2520%2520%2520jsforce.browser.init(%257B%2520%2520%2520%2520%2520%2520clientId%3A%2520%26%2339%3B%5B%2520your%2520Salesforce%2520OAuth2%2520ClientID%2520is%2520here%2520%5D%26%2339%3B%2C%2520%2520%2520%2520%2520%2520redirectUri%3A%2520%26%2339%3B%5B%2520your%2520Salesforce%2520registered%2520redirect%2520URI%2520is%2520here%2520%5D%26%2339%3B%2520%2520%2520%2520%7D)%3B%2520%2520%2520%2520jsforce.browser.on(%26%2339%3Bconnect%26%2339%3B%2C%2520async%2520function(conn)%2520%7B%2520%2520%2520%2520%2520%2520const%2520res%2520%3D%2520await%2520conn.query(%26%2339%3BSELECT%2520Id%2C%2520Name%2520FROM%2520Account%26%2339%3B)%2520%2520%2520%2520%2520%2520console.log(res)%3B%2520%2520%2520%2520%7D)%3B%2520%2520%26lt%3B%2Fscript%26gt%3B%26lt%3B%2Fhead%26gt%3B%26lt%3Bbody%26gt%3B%2520%2520%26lt%3Bbutton%2520onclick%3D%26quot%3Bjavascript%3Ajsforce.browser.login()%3B%26quot%3B%26gt%3BLogin%26lt%3B%2Fbutton%26gt%3B%26lt%3B%2Fbody%26gt%3B%26lt%3B%2Fhtml%26gt%3B%253C%2Fcode">
Example
<apex:page docType="html-5.0" showHeader="false">
<apex:includeScript value="{!URLFOR($Resource.JSforce)}" />
<script>
const conn = new jsforce.Connection({ accessToken: '{!$API.Session_Id}' });
const res = await conn.query('SELECT Id, Name FROM Account');
console.log(res);
</script>
</apex:page>
Example
<!DOCTYPE html>
<html>
<head>
<meta id="sf-canvas-signed-request" content="<%= verifiedSignedRequestJSON %>" />
<script src="/?originalUrl=https%3A%2F%2Fjsforce.github.io%2F%26quot%3Bhttps%3A%2F%2Flogin.salesforce.com%2Fcanvas%2Fsdk%2Fjs%2F42.0%2Fcanvas-all.js%26quot%3B%26gt%3B%26lt%3B%2Fscript%26gt%3B%2520%2520%26lt%3Bscript%2520src%3D%26quot%3Bhttps%3A%2F%2Fcdn.jsdelivr.net%2Fnpm%2Fjsforce%403.2.2%2Fdist%2Fjsforce.min.js%26quot%3B%26gt%3B%26lt%3B%2Fscript%26gt%3B%2520%2520%26lt%3Bscript%26gt%3B%2520%2520%2520%2520let%2520sr%2520%3D%2520document.getElementById(%26%2339%3Bsf-canvas-signed-request%26%2339%3B).content%3B%2520%2520%2520%2520const%2520conn%2520%3D%2520new%2520jsforce.Connection(%7B%2520signedRequest%3A%2520sr%2520%7D)%3B%2520%2520%2520%2520const%2520res%2520%3D%2520await%2520conn.query(%26%2339%3BSELECT%2520Id%2C%2520Name%2520FROM%2520Account%26%2339%3B)%3B%2520%2520%2520%2520console.log(res)%3B%2520%2520%26lt%3B%2Fscript%26gt%3B%26lt%3B%2Fhead%26gt%3B%26lt%3Bbody%26gt%3B%26lt%3B%2Fbody%26gt%3B%26lt%3B%2Fhtml%26gt%3B%253C%2Fcode">
Setup
$ npm install -g jsforce
Example
$ jsforce
> .connect username@salesforce.example.org
Password: *******
Logged in as : username@salesforce.example.org
> query("SELECT Id, Name FROM Account LIMIT 1")
{ totalSize: 1,
done: true,
records:
[ { attributes: [Object],
Id: '0015000000KBQ5GAAX',
Name: 'GenePoint' } ] }
> .exit
$ jsforce -c username@salesforce.example.org -e "query('SELECT Id, Name FROM Account LIMIT 2')"
{"totalSize":2,"done":true,"records":[{"attributes":{"type":"Account","url":"/services/data/v29.0/sobjects/Account/001i0000009PyDrAAK"},"Id":"001i0000009PyDrAAK","Name":"GenePoint"},{"attributes":{"type":"Account","url":"/services/data/v29.0/sobjects/Account/001i0000009PyDsAAK"},"Id":"001i0000009PyDsAAK","Name":"United Oil & Gas, UK"}]}