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.
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.
Ah I see thank you for clarifying. Do you know what delay times are to be expected when using the profile update API?
james hartley wrote...
...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.
Using the mboxTrace debugging tool (https://marketing.adobe.com/resources/help/en_US/target/target/c_content_trouble.html) I can see my API profile is updated.
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.
5-19-2017 11-26-45 AM.png 19.0 K
Thanks again! I have a few follow-up questions.
Currently I am referencing the following host. mycompanyname.tt.omtrdc.net.
It sounds like we should be using mboxedge01.tt.omtrdc.net. If so, how is the user properly associated to my account? Additionally, how many regions are there?
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:
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?