5

Consent Management across channels is left to be handled on your own. You have to piece together your Optout process in order to meet your requirements (Preference centers, relational Data model,SQL and Automations to keep your Channels in check). As noted in the documentation: "Create a mechanism for receiving a Do Not Track request, such as a ...


4

You have a trigger looking like you are making an asynchronous (@future) to method getAPIAsyn but in fact, this method is never called. Furthermore, even if the trigger did call this method, it executes asynchronously and the bottom of the trigger that loops through Trigger.new will execute BEFORE the @future method even starts - hence why no value in the ...


4

The documentation should likely be your first stop when you have a question. If you take a look at Execute a SOQL Query from the REST API documentation, at the bottom, we see this Retrieving the Remaining SOQL Query Results If the initial query returns only part of the results, the end of the response will contain a field called nextRecordsUrl. For ...


3

In general, for oauth to work, the user needs to authorise salesforce to perform requests on their behalf. If you haven't done it already, I suggest you go through the documentation on the many different types of oauth flows, and see if one of them fits your scenario. https://help.salesforce.com/articleView?id=remoteaccess_authenticate_overview.htm ...


3

Future methods only accept Apex primitive values and collections of primitives as parameters. They do not support sObject parameters or complex parameters including sObjects. The easiest way to correct this is to break your code into a synchronous piece and pass only the serialized JSON to your @future method: public static void AfterUpdate(Map<Id, ...


3

As a starting point, you will need to identify which Apex classes contain tests. From How to get a list of Test Classes in an org by sfdcfox: ApexClass[] unitTests = [FIND '@isTest' IN ALL FIELDS RETURNING ApexClass(Id, Name)][0]; You can then use the Metadata dependency API via MetadataComponentDependency with the Tooling API. With this Tooling sObject ...


2

Product again will be in the form of Map. So, you need to type-cast it to map and then get the field value: for(Object Prd: Products){ Map<String, Object> prdObject = (Map<String, Object>) Prd; System.debug('prdObject => '+prdObject); Integer AverageInventory = prdObject.containsKey('AverageInventory') : (Integer) ...


1

HttpRequest doesn't support PATCH as the method. From the docs: Possible values for the method type include: DELETE GET HEAD POST PUT TRACE Setting X-HTTP-Method-Override header to PATCH is a workaround some services support if a client can't issue a PATCH request. Docs for getimpala.com APIs do not mention this option nor do ...


1

You missed two outer levels of structure in your JSON. Map<String, Object> m = (Map<String, Object>) JSON.deserializeUntyped(str); System.debug('---->>>>debug'+m.get('Name_1')); // it is returing null The top-level JSON object doesn't contain the key Name_1. It contains the key Vehicle, whose value is a List<Object>. The ...


1

On this line if (Trigger.isBefore) { //for(Weather__c a : Trigger.New) { //a.Description__c = Descr; List<String> recordId = new List<String>(); WeatherHandler.ManageRecordsBefore(recordId); You are instantiating a list of strings, but not adding any values to it, so the list is null, and I can only assume this is not what you want to do. ...


1

I struggled to make lightning/uiRecordApi work as well. You can use imperative apex to send JSON values and use it to create the record(s) using apex.


1

There is no such functionality available out of the box. Writing your entire integration logic using front end code is not advisable, as it exposes all the credential details to your visitors. What I normally do is to build a custom endpoint to which the form is submitted. This can introduce e.g. async throttling, limit the number of subsequent request from ...


1

So after doing some research the only field you can use is DataExtension.CustomerKey in your filter, none of the other fields are supported such as id, objectid, or name So you would first need to do a retrieve on the DataExtension Object <soapenv:Body> <RetrieveRequestMsg xmlns="http://exacttarget.com/wsdl/partnerAPI"> <...


1

You need to update your code. HttpRequest req = new HttpRequest(); req.setHeader('Authorization', 'Bearer ' + UserInfo.getSessionID()); req.setHeader('Content-Type', 'application/json'); req.setEndpoint('https://brave-raccoon-5j3npj-dev-ed.lightning.force.com/services/data/v47.0/tooling/sobjects/'); req.setMethod('GET'); Http h = new Http(); ...


1

You might be able to pull some of this through the Tooling API https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm


1

As of v42.0 you can use Composite Collections to INSERT/UPDATE/DELETE up to 200 records at a time. These will be handled in a single execution context. You can also use Composite & Composite Batch to combine up to 25 "sub-requests" into a single API Call. However, each request get's its' own execution context.


Only top voted, non community-wiki answers of a minimum length are eligible