New answers tagged

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.


0

You can use WSProxy, as explained below : <script type="javascript" runat="server"> Platform.Load("core","1.1.5"); var prox = new Script.Util.WSProxy(); var cols = ["Status","SubscriberKey"]; var filter = { Property: "SubscriberKey", SimpleOperator: "equals", Value: "** any SubscriberKey** " }; var ...


0

You're sending the data as "binary", but the data itself is base-64 encoded (apparently). Try adding Content-Transfer-Encoding: base64 to the body's headers.


0

Use the Log In as Another User feature to log as the 'API Only' user Reset the security token while logged in as the 'API Only' user


0

If you use OAuth to log in, your access would be considered "static" in the sense that the changing the username or password would not automatically revoke access to the application. This is how most apps work. Note that whomever logs in would need to remain an active user, however. This is the main reason why integration users are used, so that access is ...


2

As you've guessed, the answer is indeed "No." Compiler enhancements in "future" releases affect all "previous" API versions, thus improving overall system performance regardless of API version. The only requirement for compiler changes is that such changes may not materially affect the behavior of previous versions, unless documented in the release notes. I ...


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

It looks like you may have intended to write a second method after getAccounts(), but missed the declaration. List<Account> Accounts = [SELECT Id, Name, VAT__c FROM Account WHERE Id = :accountId ]; return Accounts; At this point, control leaves your code, making String accountVat= String.ValueOf(account.VAT__c); and ...


1

https://help.salesforce.com/articleView?id=connected_app_manage_current_sessions.htm&type=5 Setup --> Connected Apps OAuth Usage Here you should see all connected apps, the user count, and the option to "block". You could block the app which it sounds like you want. Or you can even revoke certain users connection so they have to re-login in by ...


2

Here are the steps to make this happen: Create a Touchpoint for email interaction Configure NBA in interaction studio under that TouchPpint Call interaction API from email to retrieve the NBA image using POST (as per documentation below) Interaction studio will return NBA based on eligibility and priority rules The Interaction Studio API documentation ...


1

This question is quite old now, but in case anyone stumbles upon it, since most SF development has moved to VS Code, I ported the original ApexDoc over to TypeScript and made several major improvements. It is very easy to document your class files in VS Code (comment blocks can be contextually stubbed, automatically filling in your method params), and ...


5

If you don't mind using undocumented REST endpoints, then yes! you can. Create POST /automation/v1/scripts Host: {{subdomain}}.rest.marketingcloudapis.com Authorization: Bearer {{authToken}} Content-Type: application/json { "name": "RestAPIScript", "key": "RestAPIScript", "description": "", "script": ...


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 ...


1

First - you are on the right track using the ampscript on the landing page. It's easier that way versus trying to build out a soap call. Provided that you are not adding to a list with the Triggered Send interaction - your syntax should work. The error "no valid subscribers" means some data is not matching up in the TriggeredSend Data extension or the ...


1

Disclaimer: i work for a company that does that exactly (Coveo) . And yes, you are able to do so with elastic search as well, however, if you are going to integrate such functionality within a community in Salesforce, there’s quite a bit of coding involved, and considering how often the platform has releases, there’s quite a bit of maintenance to do as well.


0

There is not much documentation for Interaction Studio API. You can start here: Interaction Studio. It sounds like what you're trying to achieve can be done through the Journey Builder API by Admitting Contacts via API which is essentially using the API entry event within Journey Builder.


0

It is necessary to authenticate against https://account.demandware.com/dwsso/oauth2/access_token?grant_type=client_credentials with a valid username + password. The response will contain a bearer-token that must be used for any requests against the actual website.


0

As always, the terminology of SFMC is a bit confusing. What they are calling 'instance id' or 'definition id' in this case is not the same as the ones we normally see or can access. It is basically just the 'internal' ID that SFMC uses on its objects and is not available externally. The only way I have seen to get access to this is via the internal API calls ...


2

It is not possible. Custom fields always have the __c suffix and it is not optional.


4

Simply add a return statement. catch (CalloutException e) { // handle error return; } If your method return type is PageReference rather than void, then change return to return null.


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(); ...


Top 50 recent answers are included