I am calling the Single Profile API from many IP Address/GEO from across the globe. Is this something that is supported by the Adobe servers. Can I pass the IP address in the API call to ensure that the profile is updated in a timely fashion and properly targeted? Please note that I am not targeting in Geo Location but have experienced delays in using the profile update API in the past.
I do not know of a method to pass the IP of a visitor into the API you are mentioning. However, you shouldn't need to. But if you prefer, you can send your profile update API call to the Target server where that visitor's profile lives. This works well if you are using the PCID update method. The mboxPC will identify which server to update.
For example, mboxPC=1368007744041-575948.01_00 the 2 digits between the "." and the "_" are the server ID of that visitor. You can make your API call directly to that server using this host: mboxedge01.tt.omtrdc.net. Where the "01" matches the server ID portion of the mboxPC.
This isn't required. Target servers will propogate the profiles from server to server as needed, but it will probably give you a better update time.
Thanks for your continued assistance. I have tested this a number of times with varying degrees of success and I am interested in your opinion.
Using the application Postman I tested the following call to the profile update API while in the Tokyo region and saw realtime updates to my profile in the browser console. However when returning to the U.S. I replicated the same call (updating PC and sessions IDs, server ID of course) but have had no luck getting a customer profile param to appear in the console debug. Any thoughts?
Using the host: mycompanyname.tt.omtrdc.net is a valid method. If desired you can update the profile directly where it resides with the mboxedge##.tt.omtrdc.net host. In North America there are at least 3 different servers, more globally though I don't have the exact number.
The user is still associated with your account because the folder, not the subdomain defines this. See the example API Profile Update call from the documentation:
...Do you know what delay times are to be expected when using the profile update API?
When you use the mboxedge## subdomain method I describe above, updates should be real time. I just tested and verified this. If you don't use the mboxedge## subdomain I would guess that could be 30 min for updates to propigate to the other servers, if needed. Though I haven't tested this one personally for timing.
You can see I named my attribute: profile.apiUpdateAttr. You don't see the "profile." portion in the mbox trace view, but it is required in the API call. I just posted a date and time as my attribute value.
Ah, that is for content delivery. If you have a server-side implemenation of Target and you want Target to use the end users IP (rather than your server's IP) to perform geo segmentation off of you can add that to a deliver API call. It doesn't apply to the profile update API though.