I'm working on a solution that would scan planned deliveries for URLs (in their HTML Source) and cURL those URLs and check their HTTP Response.
Goal is to avoid sending campaigns with broken URLs.
Now, I have the 2nd bit (cURLing) complete, however I cannot figure out how to obtain all the URLs (and img src URLs) for the cURL activity.
I've tried RegEx to check the [content/html/source] in nms:delivery and was working but it's not a recommended solution (safety wise) and for more complicated HTMLs it was malfunctioning.
No, this table contains all url for delivery "published" (through the delivery button Tracking & Images).
URL are available until the purge limit (global instance option value) or per delivery, you can define the resources period of validity, and so for url contents it is written in nms:trackingUrl:tsValidity.
Please also have a look on nms:trackingUrlInfo for common fields of nms:trackingUrl.
In order to select only deliveries sent (being in or progress or completed or stopped etc), you must use the nms:delivery properties/status in your workflow activities (JS with queryDef or direct Query).
could you explain/show please how do I achieve that "Published" status?
I created a test delivery with some HTML content (links included), but I cannot make it appear in the xtk:trackingUrl schema.
Sorry for published status, I misleaded you, my bad, I am not English native.
Please use the nms:delivery.@status or other delivery fields depending of your goal.
When you use the Tracking & Images button, it displays the content of the trackingUrl table for a delivery:
My delivery is in status "Being edited" and has links in the tab you're showing, however still cannot find it in the TrackingUrl schema. Any idea why it isn't appearing?