Salesforce Platform REST API
Hosts: login.salesforce.com, test.salesforce.com · 18 facts
Error meanings
- ✅ verified:server:sandbox ·
the requested resource does not exist· GET /services/data/{version}/sobjects/{object}/{id} · env sandbox - ✅ verified:server:sandbox ·
destination url not reset. the url returned from login must be set· GET /services/data/{version}/limits · env sandbox - ✅ verified:server:sandbox ·
the soql fields function must have a limit of at most ###· GET /services/data/{version}/query · env sandbox - ✅ verified:server:sandbox ·
unexpected token: '<redacted>'· GET /services/data/{version}/query · env sandbox - ✅ verified:server:sandbox ·
select nosuchfield__c from account ^ error at row:#:column:# no such column 'nosuchfield__c' on entity 'account'. if you are attempting to use a custom field, be sure to append the '__c' after the custom field name. please reference your wsdl or the describe call for the appropriate names.· GET /services/data/{version}/query · env sandbox - ✅ verified:server:sandbox ·
select id from nosuchobject__c ^ error at row:#:column:## sobject type 'nosuchobject__c' is not supported. if you are attempting to use a custom object, be sure to append the '__c' after the entity name. please reference your wsdl or the describe call for the appropriate names.· GET /services/data/{version}/query · env sandbox - ✅ verified:server:sandbox ·
the requested resource does not exist· GET /services/data/{version}/sobjects/{object}/describe · env sandbox
Rate limits
- ✅ verified:server:sandbox · A Developer Edition org allows 15,000 API requests a day: /limits reports DailyApiRequests.Max 15000 and its Remaining count. · GET /services/data/{version}/limits · env sandbox
- ✅ verified:server:sandbox · Authenticated REST responses such as /limits and a SOQL query carry Sforce-Limit-Info: api-usage=<used>/<daily limit> (…/15000 on a Developer Edition org). · GET /services/data/{version}/limits · env sandbox
- 🔵 official · login() is limited to 3,600 calls per user per hour; past it the call fails with "Login Rate Exceeded" and the user is blocked from logging in for an hour. · POST /services/Soap/u/{version} · env sandbox
Silent behavior
- ✅ verified:server:sandbox · A SOQL query that matches nothing returns HTTP 200 with totalSize 0, done true and an empty records array, and no nextRecordsUrl. · GET /services/data/{version}/query · env sandbox
- ✅ verified:server:sandbox · REST errors are a JSON array of objects with errorCode and message (e.g. [{errorCode: NOT_FOUND, …}]), not a single error object. · GET /services/data/{version}/sobjects/{object}/{id} · env sandbox
- ✅ verified:server:sandbox ·
provided external id field does not exist or is not accessible: notanid· GET /services/data/{version}/sobjects/{object}/{id} · env sandbox
Auth quirks
- ✅ verified:server:sandbox ·
session expired or invalid· GET /services/data/{version}/limits · env sandbox - 🔵 official · Where login() is restricted (the default in new orgs), a user without the Use Any API Auth permission gets INSUFFICIENT_ACCESS from login(). · POST /services/Soap/u/{version} · env sandbox
- ✅ verified:server:sandbox · GET /services/data on the org's instance answers HTTP 200 with the list of API versions (version, url) without any credential, while /limits on the same host needs a session. · GET /services/data · env sandbox
Deprecations
- ✅ verified:server:sandbox ·
the requested resource no longer exists.· GET /services/data/{version}/limits · env sandbox - 🔵 official · SOAP API login() is retired in Summer '27, stays available in API 64.0 and earlier until then, and is disabled by default in orgs created in Winter '26 or later. · POST /services/Soap/u/{version} · env sandbox
Data: CC BY 4.0 · apifacts registry · This page is generated; edit the YAML, not the page.