Salesforce User Interface API
With new Salesforce UI API we can get the orgs data and metadata in a single response returned form an Api call. Even Salesforce uses the same UI API to build their Lightning Experience and Salesforce for Android, iOS, and mobile web.
While making calls and getting the data, salesforce does take care of checking the field-level security settings, sharing setting, and perms. We don't have to worry about making the SOQL queries to get record data, getting object metadata and themes info, getting layout info, all this heavy lifting work will be taken care by Salesforce. Best part is that every response is returned in a formatted JSON!
UI API Endpoints are divided into 3 levels namely
1. Records Endpoint
2. Actions Endpoint
3. Favorites Endpoint
For Authentication, User Interface API uses OAuth 2.0 just like all other Salesforce REST APIs does
1. User Interface API Developer Guide
2. Salesforce Blog by Raja Rao DV
Salesforce UI API helps with below features:
1. Working with Records like Getting child records, Building UI for Picklists, Uploading binary files
2. Working with Actions like Getting Actions for any given record
3. Managing Favorites like user get, create, update, and delete favorites
4. Working with List Views like Getting details about data and metadata for a List View
Lets go ahead and look at some of the key UI API resource urls that we generally use in our real time scenarios and here for our convenience I am going to use Workbench as this tool automatically takes care of making OAuth connection!
Benefits of UI API:
1. It provides easy to use/formatted JSON response
2. Field-level security, sharing rules are taken care by Salesforce
3. No SOQL limits (Note: We still have to keep in mind that API limits do still apply!)