Lightning API Developer Guide
User Manual:
Open the PDF directly: View PDF .
Page Count: 59
Download | |
Open PDF In Browser | View PDF |
Lightning API Developer Guide Version 39.0, Spring ’17 @salesforcedocs Last updated: March 10, 2017 © Copyright 2000–2017 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc., as are other names and marks. Other marks appearing herein may be trademarks of their respective owners. CONTENTS Chapter 1: Get Started with Lightning API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Lightning API Quick Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Status Codes and Error Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Chapter 2: Lightning API Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Record UI, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Record Layout, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Object Info, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Records, Get, Delete, Patch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Records, Batch Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Records, Post . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Clone Record Defaults, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Create Record Defaults, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Picklist Values, Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Chapter 3: Lightning API Request Bodies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Record Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Chapter 4: Lightning API Response Bodies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Lightning API Top-Level Response Bodies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Batch Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Object Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Picklist Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Record Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Record Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Record Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Record UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Lightning API Nested Response Bodies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Batch Result Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Canvas Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Custom Link Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Error Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Error with Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Field Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Field Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Filtered Lookup Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Lead Status Picklist Value Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Location Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Contents Opportunity Stage Picklist Value Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Picklist Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Record Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Record Exception Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Record Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Record Layout Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Record Layout Row . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Record Layout Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Record Type Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Reference To Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Report Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Theme Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Visualforce Layout Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 CHAPTER 1 Get Started with Lightning API Use Lightning API to create native mobile apps and custom web apps with your own branding and look and feel. A single REST request returns enough metadata, layout information, and data to display, edit, or create a record! Lightning API supports most objects that are available in Lightning Experience. EDITIONS Available in: Developer Edition Note: Lightning API is available as a Developer Preview in all DE orgs. To use the API in another type of org, contact Salesforce. The Lightning API base URL is https://{your_instance}.salesforce.com/services/data/v{api_version}/lapi. Use the resources in the pilot version of Lightning API to display records. • GET /lapi/record-ui/{recordIds} • GET /lapi/layout/{objectApiName} • GET /lapi/object-info/{objectApiName} • GET /lapi/records/{recordId} • PATCH /lapi/records/{recordId} • DELETE /lapi/records/{recordId} • GET /lapi/records/batch/{recordIds} • POST /lapi/records • GET /lapi/record-defaults/clone/{recordId} • GET /lapi/record-defaults/create/{apiName} • GET /lapi/object-info/{objectApiName}/picklist-values/{recordTypeId}/{fieldApiName} The first resource in the list, the Record UI resource, is the top dog of Lightning API. To display a record, your code makes this simple request: GET /lapi/record-ui/001R0000003GeJ1IAK Behind the scenes, Salesforce does the heavy lifting. • Checks field-level security settings, sharing settings, and perms. • Makes SOQL queries to get record data. • Gets object metadata and theme information. • Gets layout information. You are one happy developer, because Salesforce transforms the results into an easy-to-consume JSON response with all the metadata and data you need to display a record. Authorization Like other Salesforce REST APIs, Lightning API uses OAuth 2.0. 1 Get Started with Lightning API Versioning Lightning API is versioned. Specify the API version number in each request. GET https://{your_instance}.salesforce.com/services/data/v39.0/lapi Response Filtering Lightning API is built on the same REST framework as Chatter REST API and observes the same filtering rules. Also, several Lightning API resources support additional parameters that change the response to include what your UI needs. • formFactor—The layout display size for the record. – Large—(Default) Use this value to get a layout for desktop display size. – Medium—Use this value to get a layout for tablet display size. – Small—Use this value to get a layout for phone display size. • layoutType—The layout type for the record. – Compact—Use this value to get a layout that contains a record's key fields. – Full—(Default) Use this value to get a full layout. • mode—The access mode for the record. This value determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. – Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. – Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. – View—(Default) Use this mode if you intend to build UI that displays a record. Error Handling The response header contains an HTTP status code. If the response isn’t successful, the response body contains an error message, and if appropriate, information about the field or object where the error occurred. Rate Limiting Lightning API requests are subject to rate limiting. Lightning API has a per user, per application, per hour rate limit. When you exceed the rate limit, all Lightning API resources return a 503 Service Unavailable error code. Required Fields When you’re building UI, to determine which fields to mark as required for create and update, use the ObjectInfo.fields[].required property. Lightning API Quick Start The best way to learn an API is to use it. Let's go! Status Codes and Error Responses The response header contains an HTTP status code. If the response isn’t successful, the response body contains an error message, and if appropriate, information about the field or object where the error occurred. SEE ALSO: Digging Deeper into OAuth 2.0 on Force.com 2 Get Started with Lightning API Lightning API Quick Start Lightning API Quick Start The best way to learn an API is to use it. Let's go! Sign up for a Salesforce Developer Edition (also known as a DE org). This quick start makes a request to the top dog of Lightning APIs, the Record UI resource, /lapi/record-ui/{recordIds}. This resource returns all the information you need to display a record in an app: layout metadata, object metadata, and record data. 1. Go to the Workbench API utility. 2. Log in to your DE org. 3. The Record UI resource requires a record ID. To grab one: a. Click queries > SOQL Query. b. Select an object, such as Account, select the Id field, and click Query. c. Copy one of the IDs in the list of query results. Either keep it in your clipboard, or copy it to a notepad to grab later. 4. Select utilities > Rest Explorer. 5. Make a GET request to /lapi/record-ui/{recordIds}. Substitute the record ID from your SOQL query. Here's a sample request: GET /lapi/record-ui/001R0000003GeJ1IAK The response includes three nested response bodies. Each response body is a map because you can pass a list of record Ids to the request (for example, /lapi/record-ui/001R0000003GeJ1IAK,001R0000003GKR0IAO). In our example, we passed only one record ID. • layouts—A map of object API names to layout information for each object • objectInfos—A map of object API names to metadata for each object • records—A map of record IDs to data for each record Tip: To get these response bodies individually, use GET /lapi/layout/{objectApiName}, GET /lapi/object-info/{objectApiName}, and GET /lapi/records/{recordId}. { "layouts" : { "Account" : { "012000000000000AAA" : { "Full" : { "View" : { "id" : "00hR0000000NPP3IAO", "layoutType" : "Full", "mode" : "View", "sections" : [ { "columns" : 2, "heading" : "Account Information", "isCollapsed" : false, "layoutRows" : [ { "layoutItems" : [ { "editableForNew" : false, "editableForUpdate" : false, "label" : "Account Owner", "layoutComponents" : [ { 3 Get Started with Lightning API Lightning API Quick Start "componentType" : "Field", "label" : "Owner ID", "value" : "OwnerId" } ], "lookupIdApiName" : "OwnerId", "sortable" : false }, { "editableForNew" : true, "editableForUpdate" : true, "label" : "Phone", "layoutComponents" : [ { "componentType" : "Field", "label" : "Account Phone", "value" : "Phone" } ], "lookupIdApiName" : null, "sortable" : false } ] }, { "layoutItems" : [ { "editableForNew" : true, "editableForUpdate" : true, "label" : "Account Name", "layoutComponents" : [ { "componentType" : "Field", "label" : "Account Name", "value" : "Name" } ], "lookupIdApiName" : "Id", "sortable" : false }, { "editableForNew" : true, "editableForUpdate" : true, "label" : "Fax", "layoutComponents" : [ { "componentType" : "Field", "label" : "Account Fax", "value" : "Fax" } ], "lookupIdApiName" : null, "sortable" : false } ] }, { "layoutItems" : [ { "editableForNew" : true, "editableForUpdate" : true, "label" : "Parent Account", "layoutComponents" : [ { "componentType" : "Field", "label" : "Parent Account ID", "value" : "ParentId" } ], "lookupIdApiName" : "ParentId", "sortable" : false 4 Get Started with Lightning API Lightning API Quick Start }, { "editableForNew" : true, "editableForUpdate" : true, "label" : "Website", "layoutComponents" : [ { "componentType" : "Field", "label" : "Website", "value" : "Website" } ], "lookupIdApiName" : null, "sortable" : false } ] } ], "rows" : 3, "useHeading" : false }, ... layout info about some sections removed to save space ... { "columns" : 3, "heading" : "Custom Links", "isCollapsed" : false, "layoutRows" : [ { "layoutItems" : [ { "editableForNew" : false, "editableForUpdate" : false, "label" : "", "layoutComponents" : [ { "behavior" : "NewWindow", "componentType" : "CustomLink", "customLinkUrl" : "/servlet/servlet.Integration?lid=00bR0000000I2Ja&eid=ENTITY_ID&ic=1", "label" : "Google Search", "value" : "GoogleSearch" } ], "lookupIdApiName" : null, "sortable" : false }, { "editableForNew" : false, "editableForUpdate" : false, "label" : "", "layoutComponents" : [ { "behavior" : "NewWindow", "componentType" : "CustomLink", "customLinkUrl" : "/servlet/servlet.Integration?lid=00bR0000000I2JY&eid=ENTITY_ID&ic=1", "label" : "Google Maps", "value" : "GoogleMaps" } ], "lookupIdApiName" : null, "sortable" : false }, { "editableForNew" : false, 5 Get Started with Lightning API Lightning API Quick Start "editableForUpdate" : false, "label" : "", "layoutComponents" : [ { "behavior" : "NewWindow", "componentType" : "CustomLink", "customLinkUrl" : "/servlet/servlet.Integration?lid=00bR0000000I2JZ&eid=ENTITY_ID&ic=1", "label" : "Google News", "value" : "GoogleNews" } ], "lookupIdApiName" : null, "sortable" : false } ] }, { "layoutItems" : [ { "editableForNew" : false, "editableForUpdate" : false, "label" : "", "layoutComponents" : [ { "behavior" : "NewWindow", "componentType" : "CustomLink", "customLinkUrl" : "/servlet/servlet.Integration?lid=00bR0000000I2Jb&eid=ENTITY_ID&ic=1", "label" : "Hoovers Profile", "value" : "HooversProfile" } ], "lookupIdApiName" : null, "sortable" : false } ] } ], "rows" : 2, "useHeading" : true } ] } } } } }, "objectInfos" : { "Account" : { "apiName" : "Account", "createable" : true, "custom" : false, "defaultRecordTypeId" : null, "deleteable" : true, "feedEnabled" : true, "fields" : { "AnnualRevenue" : { "apiName" : "AnnualRevenue", "calculated" : false, "compound" : false, "controllerName" : null, "createable" : true, "custom" : false, 6 Get Started with Lightning API Lightning API Quick Start "dataType" : "Currency", "extraTypeInfo" : null, "filterable" : true, "filteredLookupInfo" : null, "highScaleNumber" : false, "htmlFormatted" : false, "label" : "Annual Revenue", "length" : 0, "nameField" : false, "picklistValuesUrls" : { }, "precision" : 18, "reference" : false, "referenceTargetField" : null, "referenceToInfos" : [ ], "relationshipName" : null, "required" : false, "scale" : 0, "sortable" : true, "updateable" : true }, ... info about some fields removed to save space ... "Website" : { "apiName" : "Website", "calculated" : false, "compound" : false, "controllerName" : null, "createable" : true, "custom" : false, "dataType" : "Url", "extraTypeInfo" : null, "filterable" : true, "filteredLookupInfo" : null, "highScaleNumber" : false, "htmlFormatted" : false, "label" : "Website", "length" : 255, "nameField" : false, "picklistValuesUrls" : { }, "precision" : 0, "reference" : false, "referenceTargetField" : null, "referenceToInfos" : [ ], "relationshipName" : null, "required" : false, "scale" : 0, "sortable" : true, "updateable" : true } }, "keyPrefix" : "001", "label" : "Account", "labelPlural" : "Accounts", 7 Get Started with Lightning API Status Codes and Error Responses "layoutable" : true, "mruEnabled" : true, "nameFields" : [ "Name" ], "queryable" : true, "recordTypeInfos" : { "012000000000000AAA" : { "available" : true, "defaultRecordTypeMapping" : true, "master" : true, "name" : "Master", "recordTypeId" : "012000000000000AAA" } }, "searchable" : true, "themeInfo" : { "color" : "7F8DE1", "iconUrl" : "https://na7-blitz02.soma.salesforce.com/img/icon/t4v35/standard/account_120.png" }, "updateable" : true } }, "records" : { "001R0000003GeJ1IAK" : { "apiName" : "Account", "fields" : { "AnnualRevenue" : { "displayValue" : "$50,000,000", "value" : 5.0E7 }, ... data for some fields removed to save space ... "Website" : { "displayValue" : null, "value" : null } }, "id" : "001R0000003GeJ1IAK", "recordTypeInfo" : null } } } SEE ALSO: Digging Deeper into OAuth 2.0 on Force.com Status Codes and Error Responses The response header contains an HTTP status code. If the response isn’t successful, the response body contains an error message, and if appropriate, information about the field or object where the error occurred. 8 Get Started with Lightning API Status Codes and Error Responses HTTP Status Code Description 200 Success with GET, PATCH, or HEAD request 201 Success with POST request 204 Success with DELETE 400 The request could not be understood, usually because the ID is not valid for the particular resource. 401 The session ID or OAuth token has expired or is invalid. Or, if the request is made by a guest user, the resource isn’t accessible to guest users. The response body contains the message and errorCode. 403 The request has been refused. Verify that the context user has the appropriate permissions to access the requested data, or that the context user is not an external user. 404 Either the specified resource was not found, or the resource has been deleted. 409 A conflict has occurred. For example, an attempt was made to update a request to join a group, but that request had already been approved or rejected. 412 A precondition has failed. For example, in a batch request, if haltOnError is true and a subrequest fails, subsequent subrequests return 412. 500 An error has occurred within Force.com, so the request could not be completed. Contact Salesforce Customer Support. 503 Too many requests in an hour or the server is down for maintenance. Example This request requires a 15 or 18 character record ID, but this record ID doesn't contain enough characters: GET /lapi/record-ui/003R000000 The response body is: HTTP/1.1 400 Bad Request Date: Tue, 29 Nov 2016 00:16:36 GMT X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block Content-Security-Policy: reflected-xss block;report-uri /_/ContentDomainCSPNoAuth?type=xss Content-Security-Policy: referrer origin-when-cross-origin Set-Cookie: BrowserId=q27CK9tSSCeI3klUaYMo6A;Path=/;Domain=.salesforce.com;Expires=Sat, 28-Jan-2017 00:16:36 GMT Expires: Thu, 01 Jan 1970 00:00:00 GMT Content-Type: application/json;charset=UTF-8 Transfer-Encoding: chunked [ { "errorCode" : "ILLEGAL_QUERY_PARAMETER_VALUE", 9 Get Started with Lightning API Status Codes and Error Responses "message" : "recordId should be a valid record ID: 003R000000" } ] SEE ALSO: Digging Deeper into OAuth 2.0 on Force.com 10 CHAPTER 2 Lightning API Resources This chapter contains Lightning API resources (also called endpoints). Record UI, Get Get layout information, metadata, and data to build UI for a single record or for a collection of records. Record Layout, Get Get metadata about page layouts for the specified object type. Object Info, Get Get metadata (field list and object properties) about a specific object. Records, Get, Delete, Patch Get, delete, and update a specific record's data. Records, Batch Get Get data for a batch of records. Records, Post Create a new record. Before you create a record, make a request to the Clone Record Default or Create Record Default resources to get the default metadata and data. Clone Record Defaults, Get Get the default layout information, object information, and data for cloning a record. After getting the default values, make a request to POST /lapi/records to create the record. Create Record Defaults, Get Get the default layout information and object information for creating a record. After getting the default values, make a request to POST /lapi/records to create the record. Picklist Values, Get Get the values for a picklist. Record UI, Get Get layout information, metadata, and data to build UI for a single record or for a collection of records. Resource /lapi/record-ui/{recordIds} Available version 39.0 HTTP methods GET 11 Lightning API Resources Record UI, Get Request parameters for GET Parameter Name Type Description Required or Optional formFactor String The layout display size for the record. One Optional of these values: Available Version 39.0 • Large—(Default) Use this value to get a layout for desktop display size. • Medium—Use this value to get a layout for tablet display size. • Small—Use this value to get a layout for phone display size. layoutTypes String[] The layout type for the record. A collection Optional of any of these values: 39.0 • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. modes String[] The access mode for the record. This value Optional determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. A collection of any of these values: • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. 12 39.0 Lightning API Resources Parameter Name Record Layout, Get Type optionalFields String[] Description Required or Optional A collection of optional field names. If a Optional field is accessible to the context user, it’s included in the response. If a field isn’t accessible to the context user, it isn’t included in the response, but it doesn’t cause an error. Specify optional field names using the format: Available Version 39.0 {ObjectApiName}.{FieldName} Response body for GET Record UI SEE ALSO: Lightning API Quick Start Record Layout, Get Get metadata about page layouts for the specified object type. Resource /lapi/layout/{objectApiName} Available version 39.0 HTTP methods GET Request parameters for GET Parameter Name Type Description Required or Optional formFactor String The layout display size for the record. One Optional of these values: • Large—(Default) Use this value to get a layout for desktop display size. • Medium—Use this value to get a layout for tablet display size. • Small—Use this value to get a layout for phone display size. 13 Available Version 39.0 Lightning API Resources Record Layout, Get Parameter Name Type Description Required or Optional Available Version layoutType String The layout type for the record. One of these values: Optional 39.0 The access mode for the record. This value Optional determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. One of these values: 39.0 • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. mode String • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. recordTypeId Id The ID of the record type (RecordType Optional object) for the new record. If not provided, the default record type is used. Response body for GET Record Layout SEE ALSO: Lightning API Quick Start 14 39.0 Lightning API Resources Object Info, Get Object Info, Get Get metadata (field list and object properties) about a specific object. Resource /lapi/object-info/{objectApiName} Available version 39.0 HTTP methods GET Request parameters for GET Parameter Name Type Description Required or Optional layoutTypes String[] The layout type for the record. A collection Optional containing any of these values: Available Version 39.0 • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. modes String[] The access mode for the record. This value Optional determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. A collection containing any of these values: • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. 15 39.0 Lightning API Resources Records, Get, Delete, Patch Parameter Name Type Description Required or Optional recordTypeId Id The ID of the record type (RecordType Optional object) for the new record. If not provided, the default record type is used. Available Version 39.0 Response body for GET Object Info SEE ALSO: Lightning API Quick Start Records, Get, Delete, Patch Get, delete, and update a specific record's data. Resource /lapi/records/{recordId} Available version 39.0 HTTP methods GET, DELETE, PATCH Request parameters for GET Parameter Name Type Description Required or Optional fields String[] Specifies the fields to return. If this property Either fields or 39.0 is specified, the response is a union of layoutTypes is fields and optionalFields. required. If the context user doesn’t have access to a field, an error is returned. If you’re not sure whether the context user has access to a field and you don’t want the request to fail if they don’t, use the optionalFields parameter instead. 16 Available Version Lightning API Resources Records, Get, Delete, Patch Parameter Name Type Description Required or Optional Available Version layoutTypes String[] Specifies the fields to return. If this property Either fields or 39.0 is specified, the response is a union of layoutTypes is layoutTypes, modes, and required. optionalFields. A collection containing any of these values: • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. modes String[] The access mode for the record. This value determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. A collection containing any of these values: Optional if the 39.0 layoutTypes parameter is specified. Otherwise, this parameter is ignored. • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. optionalFields String[] A collection of optional field names. If a Optional field is accessible to the context user, it’s included in the response. If a field isn’t accessible to the context user, it isn’t included in the response, but it doesn’t cause an error. Specify optional field names using the format: {ObjectApiName}.{FieldName} 17 39.0 Lightning API Resources Records, Get, Delete, Patch Response body for GET Record Data Request body for PATCH Name Type Description Required or Optional Available Version apiName String To create a record, specify the API name of an Object from which to create the record. To update a record, use null. Required 39.0 fields MapMap of field names to field values. Required 39.0 Format data types according to these rules: • Address—JSON String • Base64—JSON String • Boolean—JSON Boolean, true or false • Currency—JSON Float • Date—JSON string in correct format • DateTime—JSON string in ISO 8601 format • Double—JSON Float • Email—JSON String • EncryptedString—JSON String • Int—JSON Number • Location—JSON String • MultiPicklist—JSON String • Percent—JSON Float • Phone—JSON String • Picklist—JSON String • Reference—JSON String. • String—JSON String • TextArea—JSON String • Time—JSON String in format HH:MM:SS • Url—JSON String Response body for PATCH Record Data 18 Lightning API Resources Records, Batch Get Example for PATCH PATCH /lapi/records/001R0000003Gjrt { "apiName": "Account", "fields": { "Name": "Universal Containers" } } To provide an address, provide the individual fields as separate inputs. The compound field is only available in the response. { "apiName": "Account", "fields" : { "Name": "Local Boxes", "BillingState": "WA", "BillingStreet" : "123 Main Street", "BillingCountry" : "USA" } } SEE ALSO: Records, Batch Get Records, Post Lightning API Quick Start Records, Batch Get Get data for a batch of records. Resource /lapi/records/batch/{recordIds} Available version 39.0 HTTP methods GET Request parameters for GET Parameter Name Type Description Required or Optional fields String[] Specifies the fields to return. If this property Either fields or 39.0 is specified, the response is a union of layoutTypes is fields and optionalFields. required. If the context user doesn’t have access to a field, an error is returned. 19 Available Version Lightning API Resources Parameter Name Records, Batch Get Type Description Required or Optional Available Version If you’re not sure whether the context user has access to a field and you don’t want the request to fail if they don’t, use the optionalFields parameter instead. layoutTypes String[] Specifies the fields to return. If this property Either fields or 39.0 is specified, the response is a union of layoutTypes is layoutTypes, modes, and required. optionalFields. A collection containing any of these values: • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. modes String[] The access mode for the record. This value determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. A collection containing any of these values: Optional if the 39.0 layoutTypes parameter is specified. Otherwise, this parameter is ignored. • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. optionalFields String[] A collection of optional field names. If a field is accessible to the context user, it’s included in the response. If a field isn’t accessible to the context user, it isn’t included in the response, but it doesn’t 20 Optional 39.0 Lightning API Resources Parameter Name Records, Post Type Description Required or Optional Available Version cause an error. Specify optional field names using the format: {ObjectApiName}.{FieldName} Response body for GET Batch Results SEE ALSO: Clone Record Defaults, Get Create Record Defaults, Get Records, Get, Delete, Patch Lightning API Quick Start Batch Results Records, Post Create a new record. Before you create a record, make a request to the Clone Record Default or Create Record Default resources to get the default metadata and data. Resource /lapi/records Available version 39.0 HTTP methods POST Request body example POST /lapi/records { "apiName": "Account", "fields": { "Name": "Universal Containers" } } To provide an address, provide the individual fields as separate inputs. The compound field is only available in the response. { "apiName": "Account", "fields" : { "Name": "Local Boxes", "BillingState": "WA", "BillingStreet" : "123 Main Street", 21 Lightning API Resources Records, Post "BillingCountry" : "USA" } } Request body for POST Name Type Description Required or Optional Available Version apiName String To create a record, specify the API name of an Object from which to create the record. To update a record, use null. Required 39.0 fields Map Map of field names to field values. Required 39.0 Format data types according to these rules: • Address—JSON String • Base64—JSON String • Boolean—JSON Boolean, true or false • Currency—JSON Float • Date—JSON string in correct format • DateTime—JSON string in ISO 8601 format • Double—JSON Float • Email—JSON String • EncryptedString—JSON String • Int—JSON Number • Location—JSON String • MultiPicklist—JSON String • Percent—JSON Float • Phone—JSON String • Picklist—JSON String • Reference—JSON String. • String—JSON String • TextArea—JSON String • Time—JSON String in format HH:MM:SS • Url—JSON String Response body for POST Record Data 22 Lightning API Resources Records, Post Response body example { "apiName" : "Account", "fields" : { "AnnualRevenue" : { "displayValue" : null, "value" : null }, "BillingCity" : { "displayValue" : null, "value" : null }, "BillingCountry" : { "displayValue" : null, "value" : null }, "BillingPostalCode" : { "displayValue" : null, "value" : null }, "BillingState" : { "displayValue" : null, "value" : null }, "BillingStreet" : { "displayValue" : null, "value" : null }, "CreatedBy" : { "displayValue" : "Deanna Li", "value" : { "apiName" : "User", "fields" : { "Id" : { "displayValue" : "005R0000000IEDsIAO", "value" : "005R0000000IEDsIAO" }, "Name" : { "displayValue" : "Deanna Li", "value" : "Deanna Li" } }, "id" : "005R0000000IEDsIAO", "recordTypeInfo" : null } }, "CreatedById" : { "displayValue" : "005R0000000IEDsIAO", "value" : "005R0000000IEDsIAO" }, "CreatedDate" : { "displayValue" : "11/22/2016 12:36 PM", "value" : "2016-11-22T20:36:12.000Z" 23 Lightning API Resources Records, Post }, "Description" : { "displayValue" : null, "value" : null }, "Fax" : { "displayValue" : null, "value" : null }, "Industry" : { "displayValue" : null, "value" : null }, "LastModifiedBy" : { "displayValue" : "Deanna Li", "value" : { "apiName" : "User", "fields" : { "Id" : { "displayValue" : "005R0000000IEDsIAO", "value" : "005R0000000IEDsIAO" }, "Name" : { "displayValue" : "Deanna Li", "value" : "Deanna Li" } }, "id" : "005R0000000IEDsIAO", "recordTypeInfo" : null } }, "LastModifiedById" : { "displayValue" : "005R0000000IEDsIAO", "value" : "005R0000000IEDsIAO" }, "LastModifiedDate" : { "displayValue" : "11/22/2016 12:36 PM", "value" : "2016-11-22T20:36:12.000Z" }, "Name" : { "displayValue" : "Universal Containers", "value" : "Universal Containers" }, "NumberOfEmployees" : { "displayValue" : null, "value" : null }, "Owner" : { "displayValue" : "Deanna Li", "value" : { "apiName" : "User", "fields" : { "Id" : { "displayValue" : "005R0000000IEDsIAO", 24 Lightning API Resources Records, Post "value" : "005R0000000IEDsIAO" }, "Name" : { "displayValue" : "Deanna Li", "value" : "Deanna Li" } }, "id" : "005R0000000IEDsIAO", "recordTypeInfo" : null } }, "OwnerId" : { "displayValue" : "005R0000000IEDsIAO", "value" : "005R0000000IEDsIAO" }, "ParentId" : { "displayValue" : null, "value" : null }, "Phone" : { "displayValue" : null, "value" : null }, "ShippingCity" : { "displayValue" : null, "value" : null }, "ShippingCountry" : { "displayValue" : null, "value" : null }, "ShippingPostalCode" : { "displayValue" : null, "value" : null }, "ShippingState" : { "displayValue" : null, "value" : null }, "ShippingStreet" : { "displayValue" : null, "value" : null }, "Type" : { "displayValue" : null, "value" : null }, "Website" : { "displayValue" : null, "value" : null } }, "id" : "001R0000003GeJ1IAK", 25 Lightning API Resources Clone Record Defaults, Get "recordTypeInfo" : null } SEE ALSO: Clone Record Defaults, Get Create Record Defaults, Get Records, Get, Delete, Patch Lightning API Quick Start Clone Record Defaults, Get Get the default layout information, object information, and data for cloning a record. After getting the default values, make a request to POST /lapi/records to create the record. Resource /lapi/record-defaults/clone/{recordId} Available version 39.0 HTTP methods GET Request parameters for GET Parameter Name Type Description Required or Optional formFactor String The layout display size for the record. One Optional of these values: Available Version 39.0 • Large—(Default) Use this value to get a layout for desktop display size. • Medium—Use this value to get a layout for tablet display size. • Small—Use this value to get a layout for phone display size. recordTypeId Id The ID of the record type (RecordType Optional object) for the new record. If not provided, the default record type is used. 26 39.0 Lightning API Resources Create Record Defaults, Get Response body for GET Record Defaults SEE ALSO: Records, Post Lightning API Quick Start Create Record Defaults, Get Get the default layout information and object information for creating a record. After getting the default values, make a request to POST /lapi/records to create the record. Resource /lapi/record-defaults/create/{apiName} Available version 39.0 HTTP methods GET Request parameters for GET Parameter Name Type Description Required or Optional formFactor String The layout display size for the record. One Optional of these values: Available Version 39.0 • Large—(Default) Use this value to get a layout for desktop display size. • Medium—Use this value to get a layout for tablet display size. • Small—Use this value to get a layout for phone display size. recordTypeId Id The ID of the record type (RecordType Optional object) for the new record. If not provided, the default record type is used. Response body for GET Record Defaults SEE ALSO: Records, Post Lightning API Quick Start 27 39.0 Lightning API Resources Picklist Values, Get Picklist Values, Get Get the values for a picklist. Resource /lapi/object-info/{objectApiName}/picklist-values/{recordTypeId}/{fieldApiName} Available version 39.0 HTTP methods GET Response body for GET Picklist Values Example When you make a request to /lapi/record-ui/{recordIds} or /lapi/object-info/{objectApiName}, if the response includes a picklist field, it also includes a picklistValueUrl property. That property contains a Picklist Values resource with the {objectApiName}, {recordTypeId}, and {fieldApiName} filled in, as in this example: GET /services/data/v39.0/lapi/object-info/Account/picklist-values/012000000000000AAA/Type/ { "controllerValues" : { }, "defaultValue" : null, "url" : "/services/data/v39.0/lapi/object-info/Account/picklist-values/012000000000000AAA/Type", "values" : [ { "attributes" : null, "label" : "Analyst", "picklistValueType" : "Standard", "validFor" : [ ], "value" : "Analyst" }, { "attributes" : null, "label" : "Competitor", "picklistValueType" : "Standard", "validFor" : [ ], "value" : "Competitor" }, ... some picklist values removed for space ... { "attributes" : null, "label" : "Other", "picklistValueType" : "Standard", "validFor" : [ ], "value" : "Other" 28 Lightning API Resources Picklist Values, Get } ] } SEE ALSO: Record UI, Get Object Info, Get Lightning API Quick Start 29 CHAPTER 3 Lightning API Request Bodies The successful execution of a request to a resource can return a response body in JSON format. A request to a resource always returns an HTTP response code, whether the request was successful or not. Record Input A description of a record to use in a request to create or update a record. Record Input A description of a record to use in a request to create or update a record. Example POST /lapi/records { "apiName": "Account", "fields": { "Name": "Universal Containers" } } To provide an address, provide the individual fields as separate inputs. The compound field is only available in the response. { "apiName": "Account", "fields" : { "Name": "Local Boxes", "BillingState": "WA", "BillingStreet" : "123 Main Street", "BillingCountry" : "USA" } } Properties Name Type Description Required or Optional Available Version apiName String To create a record, specify the API name of an Object from which to create the record. To update a record, use null. Required 39.0 30 Lightning API Request Bodies Record Input Name Type Description Required or Optional Available Version fields Map Map of field names to field values. Required 39.0 Format data types according to these rules: • Address—JSON String • Base64—JSON String • Boolean—JSON Boolean, true or false • Currency—JSON Float • Date—JSON string in correct format • DateTime—JSON string in ISO 8601 format • Double—JSON Float • Email—JSON String • EncryptedString—JSON String • Int—JSON Number • Location—JSON String • MultiPicklist—JSON String • Percent—JSON Float • Phone—JSON String • Picklist—JSON String • Reference—JSON String. • String—JSON String • TextArea—JSON String • Time—JSON String in format HH:MM:SS • Url—JSON String SEE ALSO: Records, Post 31 CHAPTER 4 Lightning API Response Bodies A request to a resource returns a response body. Some response bodies also contain nested response bodies. A request to a resource always returns an HTTP response code, whether the request was successful or not. Lightning API Top-Level Response Bodies These response bodies are returned from requests to Lightning API resources. They may contain nested response bodies. Lightning API Nested Response Bodies These response bodies are nested in top-level response bodies. Lightning API Top-Level Response Bodies These response bodies are returned from requests to Lightning API resources. They may contain nested response bodies. A request to a resource always returns an HTTP response code, whether the request was successful or not. Batch Results The results from a request to a batch resource. Results include information for each subrequest in the batch. Object Info The metadata for an object. Picklist Values The picklist values for a field, scoped to a record type. Record Data The field data, API name, and record type information for a record. Record Defaults The default information and data needed to create or clone a record. Use these values in a request to POST /lapi/records. Record Layout The layout information for a record. Record UI The layout information, field information, and data for a record. SEE ALSO: Lightning API Nested Response Bodies 32 Lightning API Response Bodies Batch Results Batch Results The results from a request to a batch resource. Results include information for each subrequest in the batch. Property Type Description Filter Group Available and Version Version hasErrors Boolean true if at least one of the results in the result set is an Small, 39.0 HTTP status code in the 400 or 500 range; false 39.0 otherwise results Batch Result Item[] Collection of batch result items Small, 39.0 39.0 SEE ALSO: Records, Batch Get Object Info The metadata for an object. Property Name Type Description Filter Group and Available Version Version apiName String The object's API name. Small, 39.0 39.0 createable Boolean Indicates whether the object can be created. Small, 39.0 39.0 custom Boolean Indicates whether the object is custom. Small, 39.0 39.0 The ID for the default record type for this Medium, 39.0 object, if any. If there isn’t a default type, or if there’s only a master type, this value is null. 39.0 defaultRecordTypeId String deleteable Boolean Indicates whether the object can be deleted. Small, 39.0 39.0 feedEnabled Boolean Indicates whether the object can have feeds. Medium, 39.0 39.0 fields Map A map of field API name to information Medium, 39.0 about the field. This map only contains fields relevant to the requested layout and mode. 39.0 keyPrefix String The key prefix for IDs of this object. Medium, 39.0 39.0 label String The object's display label. Small, 39.0 39.0 labelPlural String The plural form of the object's display label. Medium, 39.0 39.0 33 Lightning API Response Bodies Picklist Values Property Name Type Description Filter Group and Available Version Version layoutable Boolean Indicates whether the object can have a layout. Small, 39.0 39.0 mruEnabled Boolean Indicates whether the object can appear Small, 39.0 in Most Recently Used lists. 39.0 nameFields String[] A collection of the API names of the Medium, 39.0 fields used to identify the name field for standard and custom objects. Typically there is one name field per object, except where FirstName and LastName fields are used. 39.0 queryable Boolean Indicates whether the object can be queried by the context user. 39.0 recordTypeInfos Map about the record type. All record types are visible whether or not the user has access to them. 39.0 searchable Boolean Indicates whether the object can be searched. Small, 39.0 39.0 themeInfo Theme Info Theme information for the object. Medium, 39.0 39.0 updateable Boolean Indicates whether the object can be updated. Small, 39.0 39.0 SEE ALSO: Object Info, Get Record UI Clone Record Defaults, Get Create Record Defaults, Get Picklist Values The picklist values for a field, scoped to a record type. 34 Small, 39.0 Lightning API Response Bodies Property Name Type controllerValues Map Record Data Description Filter Group and Version Available Version If the picklist is independent, the map is empty. Small, 39.0 39.0 If the picklist is dependent, this map contains the following: • If the controlling field is a picklist, the picklist value is the value index. • If the controlling field is a boolean, 0 indicates false and 1 indicates true. Values in the map are: – "false": 0 – "true": 1 defaultValue Picklist Value The default value for the picklist, or null Small, 39.0 if there isn't one. 39.0 url String A self-reference URL back to the API that can be used to retrieve this payload. Small, 39.0 39.0 values Picklist Value[] A list of the applicable values for this object-record-type-field combination. Small, 39.0 39.0 SEE ALSO: Picklist Values, Get Record Data The field data, API name, and record type information for a record. Property Name Type Description Filter Group and Version Available Version apiName String The record's API name. Small, 39.0 39.0 fields Map The field data for this record, matching the Small, 39.0 requested layout and mode. 39.0 id String The ID of this record. 39.0 35 Small, 39.0 Lightning API Response Bodies Property Name Type recordTypeInfo Record Type Info Record Defaults Description Filter Group and Version Available Version The record type info for this record, if any. Small, 39.0 39.0 SEE ALSO: Records, Get, Delete, Patch Records, Post Record UI Clone Record Defaults, Get Create Record Defaults, Get Record Defaults The default information and data needed to create or clone a record. Use these values in a request to POST /lapi/records. Property Name Type Description Filter Group and Version Available Version layout Record Layout Record layout information. Medium, 39.0 39.0 objectInfo Object Info Object metadata. Big, 39.0 39.0 record Record Data Pre-populated record data. Small, 39.0 39.0 SEE ALSO: Clone Record Defaults, Get Create Record Defaults, Get Records, Post Record Layout The layout information for a record. Property Name Type Description Filter Group and Version Available Version id String The layout ID. Small, 39.0 39.0 layoutType String The layout type for the record. One of these Small, 39.0 values: 39.0 • Compact—Use this value to get a layout that contains a record's key fields. • Full—(Default) Use this value to get a full layout. 36 Lightning API Response Bodies Record UI Property Name Type Description Filter Group and Version mode String The access mode for the record. This value Small, 39.0 determines which fields to get from a layout. Layouts have different fields for create, edit, and view modes. For example, formula fields are rendered in view mode, but not in create mode because they’re calculated at run time, like formulas in a spreadsheet. One of these values: Available Version 39.0 • Create—Use this mode if you intend to build UI that lets a user create a record. This mode is used by the /lapi/record-defaults/create/{apiName} resource. • Edit—Use this mode if you intend to build UI that lets a user edit a record. This mode is used by the /lapi/record-defaults/clone/{recordId} resource. • View—(Default) Use this mode if you intend to build UI that displays a record. sections Record Layout Section[] A collection of layout sections. Small, 39.0 39.0 Filter Group and Version Available Version SEE ALSO: Record Layout, Get Record UI Clone Record Defaults, Get Create Record Defaults, Get Record UI The layout information, field information, and data for a record. Property Name Type Description layouts Map record layout information. 39.0 objectInfos Map metadata. 39.0 37 Lightning API Response Bodies Lightning API Nested Response Bodies Property Name Type Description records Map Filter Group and Version Available Version Small, 39.0 39.0 SEE ALSO: Record UI, Get Lightning API Nested Response Bodies These response bodies are nested in top-level response bodies. A request to a resource always returns a HTTP response code, whether the request was successful or not. Batch Result Item The results of one subrequest in a batch request. Canvas Layout Component A canvas component on a record page layout. Custom Link Layout Component A custom link component on a record page layout. Error Message An error code and error message. Error with Output Contains extra information about errors. In rare cases, an error message isn't enough to describe the reason for a failure. For example, when a conflicting precondition exists, the error result can include the information about the cause of the conflict. Field A field's metadata. Field Layout Component A field in a record layout. Field Value The raw and displayable field values for a field in a record. Filtered Lookup Info Metadata for a lookup filter. Lead Status Picklist Value Attributes Additional picklist value attributes for lead statuses. Location Field A complex location value for a record field. Opportunity Stage Picklist Value Attributes Additional picklist value attributes for opportunity stages. Picklist Value A single picklist value. 38 Lightning API Response Bodies Batch Result Item Record Exceptions A collection of record exception errors. Record Exception Error Informaiton about a record exception error. Record Layout Component A concrete record layout component. Record Layout Item An item in a record layout. Record Layout Row A row in a record layout. Record Layout Section A section in a record layout. Record Type Info Informaiton about a record type. Reference To Info Information about a reference field's referenced types and the name field names of those types. Report Layout Component A report chart component on a record layout page. Theme Info Color and icon information for a theme. Visualforce Layout Component A Visualforce component on a record layout page. SEE ALSO: Lightning API Top-Level Response Bodies Batch Result Item The results of one subrequest in a batch request. Property Type Description Filter Group Available and Version Version result One of these types: A response body for a record passed in a request to /lapi/records/batch/{recordIds}. Small, 39.0 • Record Data • Error Message Important: If the result is an error, the type is a collection 39 39.0 Lightning API Response Bodies Property Canvas Layout Component Type Description Filter Group Available and Version Version An HTTP status code indicating the status of this individual request in the batch. Small, 39.0 of error messages. statusCode Integer 39.0 Canvas Layout Component A canvas component on a record page layout. Property Name Type Description Filter Group and Version Available Version componentType String The value is Canvas. Small, 39.0 39.0 displayLocation String The location in the application where the canvas app is being called from. One of these values: Small, 39.0 39.0 • Chatter—The canvas app was called from the Chatter tab. • ChatterFeed—The canvas app was called from a Chatter canvas feed item. • MobileNav—The canvas app was called from the navigation menu in Salesforce1. • OpenCTI—The canvas app was called from an Open CTI component. • PageLayout—The canvas app was called from an element within a page layout. If the displayLocation is PageLayout, one of the subLocation values can be returned. • Publisher—The canvas app was called from a canvas custom quick action. • ServiceDesk—The canvas app was called from a Salesforce Console component. • Visualforce—The canvas app was called from a Visualforce page. • None—The canvas app was called from the Canvas App Previewer. 40 Lightning API Response Bodies Property Name Type Custom Link Layout Component Description Filter Group and Version Available Version The sublocation in the application where the canvas app was called from when the canvas app is loaded in a mobile device. The possible values are: • S1MobileCardFullview—The canvas app was called from a mobile card. • S1MobileCardPreview—The canvas app was called from a mobile card preview. • S1RecordHomePreview—The canvas app was called from a record detail page preview. • S1RecordHomeFullview—The canvas app was called from a page layout. height String The height of the component. Small, 39.0 39.0 referenceId String The unique ID of the canvas app definition. Small, 39.0 39.0 showScroll Boolean Indicates whether to show the scroll bar on Small, 39.0 the canvas component (true) or not (false). 39.0 width String The width of the component. Small, 39.0 39.0 value String The API name of the canvas app. Small, 39.0 39.0 Filter Group and Version Available Version Custom Link Layout Component A custom link component on a record page layout. Property Name Type Description behavior String Indicates how a link behaves on open. One Small, 39.0 of these values: • NewWindow—Open a new window. • NoSidebar—No sidebar • OnClickJavaScript—When the link is clicked, run JavaScript. • Replace—Replace the current page. • Sidebar—Sidebar 41 39.0 Lightning API Response Bodies Property Name Error Message Type Description Filter Group and Version Available Version componentType String The component type. The value is CustomLink. Small, 39.0 39.0 customLinkUrl String The custom link URL. Small, 39.0 39.0 label String The custom link label. Small, 39.0 39.0 value String The value of the custom link component. Small, 39.0 39.0 Error Message An error code and error message. Property Type Description Filter Group Available and Version Version errorCode String An error code with information about the error, for example, INSUFFICIENT_PRIVILEGES Small, 39.0 39.0 message String Description of error Small, 39.0 39.0 Error with Output Contains extra information about errors. In rare cases, an error message isn't enough to describe the reason for a failure. For example, when a conflicting precondition exists, the error result can include the information about the cause of the conflict. Property Type Description enhancedErrorType String Indicates the type of the output property. The Small, 39.0 value is either null or RecordError. 39.0 message String Description of the error. Small, 39.0 39.0 output Any response body The response body returned by the requested Small, 39.0 resource. For example, if a successful request returns a Object Info response body but an error triggers the Error with Output response body, the value of the output property is an Object Info response body. 39.0 When an error occurs related to record create or update, this value is Record Exceptions. 42 Filter Group Available and Version Version Lightning API Response Bodies Field Field A field's metadata. Property Name Type Description Filter Group and Available Version Version apiName String The API name for this field. Small, 39.0 39.0 calculated Boolean Indicates whether the field is a custom Small, 39.0 formula field. 39.0 compound Boolean Indicates whether the field is a top-level Small, 39.0 compound field. 39.0 If the dataType is Location, this value is usually false. controllerName String The name of the field that controls the values of this picklist. Small, 39.0 39.0 createable Boolean Indicates whether the field can be created. Small, 39.0 39.0 custom Boolean Indicates whether the field is custom. Small, 39.0 39.0 dataType String Field type. One of these values: Small, 39.0 39.0 • Address • Base64 • Boolean • ComplexValue—Complex Value Type (CVT). • Currency • Date • DateTime • Double • Email • EncryptedString • Int • Location • MultiPicklist • Percent • Phone • Picklist • Reference • String • TextArea • Time 43 Lightning API Response Bodies Property Name Field Type Description Filter Group and Available Version Version • Url extraTypeInfo String More data type information. One of these values: • Small, 39.0 39.0 ExternalLookup—External lookup • ImageUrl—Image url • IndirectLookup—Indirect lookup • PersonName—Person name • PlainTextArea—Plain text area • RichTextArea—Rich text area • SwitchablePersonName—Switchable person name filterable Boolean Indicates whether the field is filterable. Small, 39.0 If true, then this field can be specified in the WHERE clause of a SOQL statement. 39.0 filteredLookupInfo Filtered Lookup Info If the field is a reference field type with Small, 39.0 a lookup filter, this value contains the lookup information. 39.0 highScaleNumber Boolean Indicates whether the field stores Small, 39.0 numbers to 8 decimal places regardless of what's specified in the field details. 39.0 htmlFormatted Boolean Indicates whether the field has been formatted for HTML and should be encoded for display in HTML. Also indicates whether a field is a custom formula field that has an IMAGE text function. Small, 39.0 39.0 label String Text label that is displayed next to the Small, 39.0 field in the Salesforce user interface. This label may be localized. 39.0 length Integer For string fields, the maximum size of the field in number of Unicode characters (not bytes). Small, 39.0 39.0 nameField Boolean Indicates whether the field is a name field. Small, 39.0 39.0 44 Lightning API Response Bodies Field Layout Component Property Name Type Description picklistValuesUrls Map A mapping of record type IDs to API Small, 39.0 URLs to use to get picklist values for this field in the context of a record type. 39.0 precision Integer For double fields, indicates the Small, 39.0 maximum number of digits that can be stored, on both sides of the decimal point. 39.0 reference Boolean Indicates whether the field is a foreign key reference to another record. 39.0 referenceTargetField String Filter Group and Available Version Version Small, 39.0 For indirect lookup relationships on Medium, 39.0 external objects, the target custom field of the referenced object. 39.0 referenceToInfos Reference To Info[] For fields that refer to other objects, this Small, 39.0 list includes information about the object types and name fields of the referenced objects. 39.0 relationshipName String The name of the relationship, if this relationship is a master-detail relationship field. Small, 39.0 39.0 required Boolean Indicates whether the field is required on create or update. Small, 39.0 39.0 scale Integer For double fields, indicates the number Small, 39.0 of digits to the right of the decimal point. 39.0 sortable Boolean Indicates whether a query can sort on this field. Small, 39.0 39.0 updateable Boolean Indicates whether the field can be updated. Small, 39.0 39.0 Field Layout Component A field in a record layout. Property Name Type Description Filter Group and Version Available Version componentType String The value is Field. Small, 39.0 39.0 label String The label of the field. Small, 39.0 39.0 value String The API name of the field. Small, 39.0 39.0 45 Lightning API Response Bodies Field Value Field Value The raw and displayable field values for a field in a record. Property Name Type Description Filter Group and Version Available Version displayValue String The displayable value for a field. For a date, Small, 39.0 this value is familiar to users rather than an ISO 8601 formatted date value, which is the raw form. Currency values are also formatted for display. If data can be localized to the context user's language using the toLabel() function, that value is also displayed here. 39.0 value Object The value of a field in its raw data form. Small, 39.0 39.0 Description Filter Group and Version Available Version A collection of controlling fields when the lookup filter is dependent on the source object. Small, 39.0 39.0 Boolean Indicates whether the lookup filter is dependent on the source object. Small, 39.0 39.0 optionalFilter Boolean Indicates whether the lookup filter is optional. Small, 39.0 39.0 Filter Group and Version Available Version Filtered Lookup Info Metadata for a lookup filter. Property Name Type controllingFields String[] dependent Lead Status Picklist Value Attributes Additional picklist value attributes for lead statuses. Property Name Type Description converted Boolean If this status indicates the lead has been Small, 39.0 converted, the value is true, otherwise false. For more info, see the documentation for the LeadStatus standard object. 46 39.0 Lightning API Response Bodies Property Name Location Field Type Description picklistAttributesValueType String Filter Group and Version Available Version The value is LeadStatus. Indicates that Small, 39.0 these value attributes are associated with the status of a Lead. 39.0 Available Version Location Field A complex location value for a record field. Property Name Type Description Filter Group and Version latitude Double Gets the latitude of the location. This value Small, 39.0 maybe null if both latitude and longitude are null. 39.0 longitude Double Gets the longitude of the location. This value Small, 39.0 maybe null if both latitude and longitude are null. 39.0 Opportunity Stage Picklist Value Attributes Additional picklist value attributes for opportunity stages. Property Name Type Description closed Boolean Indicates whether this opportunity stage Small, 39.0 value represents a closed opportunity. Multiple opportunity stage values can represent a closed opportunity. For more info, see the doc for the OpportunityStage standard object. 39.0 defaultProbability Double The default percentage estimate of the Small, 39.0 confidence in closing a specific opportunity for this opportunity stage value. May be null if forecasting is not enabled for the org. For more info, see the doc for the OpportunityStage standard object. 39.0 The default forecast category value for Small, 39.0 this opportunity stage value. May be null if forecasting is not enabled for the org. For more info, see the doc for the OpportunityStage standard object. 39.0 forecastCategoryName String 47 Filter Group and Available Version Version Lightning API Response Bodies Property Name Picklist Value Type picklistAttributesValueType String Boolean won Description Filter Group and Available Version Version The value is OpportunityStage. Small, 39.0 Indicates that these value attributes are associated with the status of a Opportunity. 39.0 Indicates whether this opportunity stage Small, 39.0 value represents a won opportunity. Multiple opportunity stage values can represent a won opportunity. For more info, see the documentation for the OpportunityStage standard object. 39.0 Picklist Value A single picklist value. Property Name Type Description Filter Group and Version attributes Either null or one For most picklist value types, this property Medium, 39.0 is null. of these response bodies: If the picklist value is a lead status or an opportunity stage, this value contains more • Lead Status Picklist Value attributes to help consumers understand Attributes the meaning of the value. Available Version 39.0 • Opportunity Stage Picklist Value Attributes label String The displayable value of the picklist to use Small, 39.0 in a UI. 39.0 validFor Integer[] If the picklist is a dependent picklist, the Small, 39.0 property contains a list of the controlling value indexes for which this value is valid. If the picklist is an independent picklist, the list is empty. 39.0 value String The value of the picklist to use in the API. 39.0 Record Exceptions A collection of record exception errors. 48 Small, 39.0 Lightning API Response Bodies Record Exception Error Property Name Type Description Filter Group and Version Available Version errors Record Exception Error [] General errors. Small, 39.0 39.0 fieldErrors Map Small, 39.0 39.0 Filter Group and Version Available Version Record Exception Error Informaiton about a record exception error. Property Name Type Description field String A field API name. If no field applies, value is Small, 39.0 null. 39.0 fieldLabel String A field label. If no field applies, value is null. Small, 39.0 39.0 message String An error message Small, 39.0 39.0 statusCode String An error status code Small, 39.0 39.0 Description Filter Group and Version Available Version One of these values: Small, 39.0 39.0 Small, 39.0 39.0 Record Layout Component A concrete record layout component. Property Name Type componentType String • AnalyticsCloud • Canvas • CustomLink • EmptySpace • ExpandedLookup • Field • ReportChart • Separator • VisualforcePage value String The value of this component. 49 Lightning API Response Bodies Record Layout Item Record Layout Item An item in a record layout. Property Name Type Description Filter Group and Version Available Version editableForNew Boolean Indicates whether the item Small, 39.0 may be edited on create 39.0 editableForUpdate Boolean Indicates whether the item Small, 39.0 may be edited on update 39.0 The text label for the item Small, 39.0 39.0 layoutComponents Collection of components. Collection A collection of components Small, 39.0 39.0 label String can contain any of these components: that make up the item • Canvas Layout Component • Custom Link Layout Component • Field Layout Component • Record Layout Component • Report Layout Component • Visualforce Layout Component lookupIdApiName String sortable The ID field name of a lookup field. Boolean Small, 39.0 39.0 Indicates whether the item Small, 39.0 is sortable 39.0 Record Layout Row A row in a record layout. Property Name Type Description Filter Group and Version layoutItems Record Layout Item[] A collection of items in the row, from left to Small, 39.0 right. Might not extend to the last column. Available Version 39.0 Record Layout Section A section in a record layout. Property Name Type Description Filter Group and Version Available Version columns Integer The number of columns in the section. Small, 39.0 39.0 50 Lightning API Response Bodies Record Type Info Property Name Type Description Filter Group and Version Available Version heading String The heading text for the section. Small, 39.0 39.0 isCollapsed Boolean Indicates whether the section should initially Medium, 39.0 be displayed as collapsed. layoutRows Record Layout Row[] A collection of the rows in the section. Small, 39.0 39.0 rows Integer The number of rows in the section. Small, 39.0 39.0 useHeading Boolean Indicates whether the heading text is expected to be displayed. Medium, 39.0 39.0 39.0 Record Type Info Informaiton about a record type. Property Name Type Description Filter Group and Available Version Version available Boolean Indicates whether this record type is available to the context user when creating a new record. Small, 39.0 39.0 defaultRecordTypeMapping Boolean Indicates whether this is the default Small, 39.0 record type mapping for the associated object. 39.0 master Boolean Indicates whether this is the master Small, 39.0 record type. The master record type is the default record type that’s used when a record has no custom record type associated with it. 39.0 name String The record type's API name. Small, 39.0 39.0 recordTypeId String The ID of the record type. Small, 39.0 39.0 Reference To Info Information about a reference field's referenced types and the name field names of those types. Property Name Type Description Filter Group and Version Available Version apiName String The object API name of a type being referenced in a relationship. Small, 39.0 39.0 nameFields String[] A collection of names of the name fields for Small, 39.0 this object type. Combined with the 39.0 51 Lightning API Response Bodies Property Name Type Report Layout Component Description Filter Group and Version Available Version Filter Group and Version Available Version relationship name, you can determine how to query this type's name fields, for example, Parent.Name. Typically there is one name field per object, except where FirstName and LastName fields are used. Report Layout Component A report chart component on a record layout page. Property Name Type Description cacheData Boolean Indicates whether to cache data (true) or Small, 39.0 not (false). 39.0 The value is ReportChart. Small, 39.0 39.0 componentType String error String An error message. Small, 39.0 39.0 filter String A filter for the report. Small, 39.0 39.0 hideOnError Boolean Indicates whether to hide the component when there's an error (true) or not (false). Small, 39.0 39.0 placeholder String A placeholder for the report. Small, 39.0 39.0 reportId String The component's report ID. Small, 39.0 39.0 showTitle Boolean Indicates whether to show the title of the report (true) or not (false). Small, 39.0 39.0 size String The size of the component. Small, 39.0 39.0 value String The value of the component. Small, 39.0 39.0 Theme Info Color and icon information for a theme. Property Name Type Description Filter Group and Version Available Version color String Color Small, 39.0 39.0 iconUrl String Icon URL Small, 39.0 39.0 52 Lightning API Response Bodies Visualforce Layout Component Visualforce Layout Component A Visualforce component on a record layout page. Property Name Type componentType String Description Filter Group and Version Available Version The value is VisualforcePage. Small, 39.0 39.0 height String The height of the component. Small, 39.0 39.0 showLabel Boolean Indicates whether to show the section label Small, 39.0 with this Visualforce component (true) or not (false). 39.0 showScroll Boolean Indicates whether to show the scroll bar on Small, 39.0 the canvas component (true) or not (false). 39.0 value String The value of this component. Small, 39.0 39.0 The Visualforce URL. Small, 39.0 39.0 The width of the component. Small, 39.0 39.0 visualforceUrl String width String 53 INDEX Record Layout Item 50 Record Layout Row 50 Record Layout Section 50 Record Type Info 51 Record UI 37 Record UI, Get 11 Records, Batch Get 19 Records, Get 16 Records, Post 21 Reference To Info 51 Report Layout Component 52 Request bodies Record Input 30 Resources clone record defaults 26 create record defaults 27 error responses 8 object layout, get 13 object metadata, get 15 picklist values, get 28 record UI, get 11 records, batch get 19 records, get 16 records, post 21 Response bodies Batch Result Item 39 Batch Results 33 Canvas Layout Component 40 Custom Link Layout Component 41 Error Message 42 Error with Output 42 Field 43 Field Layout Component 45 Field Value 46 Filtered Lookup Info 46 Lead Status Picklist Value Attributes 46 Location Field 47 Object Info 33 Opportunity Stage Picklist Value Attributes 47 Picklist Value 48 Picklist Values 34 Record 35 Record Defaults 36 Record Exception 48 Record Exception Error 49 Record Layout 36 B Batch Result Item 39 Batch Results 33 C Canvas Layout Component 40 Clone Record Defaults 26 Create Record Defaults 27 Custom Link Layout Component 41 E Error Message 42 Error responses 8 Error with Output response body 42 F Field 43 Field Layout Component Representation 45 Field Value 46 Filtered Lookup Info 46 L Lead Status Picklist Value Attributes 46 Lightning API quick start 3 Location Field 47 O Object Info 33 Object Layout, Get. 13 Object Metadata, Get 15 Opportunity Stage Picklist Value Attributes 47 P Picklist Value 48 Picklist Values 34 Picklist Values, Get 28 R Record 35 Record Defaults 36 Record Exception 48 Record Exception Error 49 Record Input 30 Record Layout 36 Record Layout Component 49 54 Index Response bodies (continued) Record Layout Component 49 Record Layout Item 50 Record Layout Row 50 Record Layout Section 50 Record Type Info 51 Record UI 37 Reference To Info 51 Report Layout Component 52 Response bodies (continued) Theme Info 52 Visualforce Layout Component 53 T Theme Info 52 V Visualforce Layout Component 53 55
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.4 Linearized : Yes Create Date : 2017:03:11 05:19:35Z Author : salesforce.com, inc. Date Time Generated : 2017-03-10T21:19:30.952-08:00 Trapped : False DRC : 206.14 Modify Date : 2017:03:11 05:19:35Z Format : application/pdf Title : Lightning API Developer Guide Creator : salesforce.com, inc. Producer : XEP 4.20 build 20120720 Creator Tool : Unknown Page Count : 59 Page Mode : UseOutlinesEXIF Metadata provided by EXIF.tools