I need to display some external data related to a task inside Workfront. I can create a dashboard that displays a static "External Page" from a private local server. I need to pass a parameter in that URL that includes some information about the current task, so I can get a response from a local ERP database that is relevant to that task (a field in my ERP system is used to relate quotes/orders/invoices to Workfront tasks). For example, I would have to define a URL that would look something like http://my.intranet/report?ref=$$REFNUM ... And the $$REFNUM token would be replaced with the reference number for the task where the dashboard is located. My server would see a request that looks like http://my.intranet/report?ref=12345, and return information related to the task with reference number 12345.
I have proposals from two consultants that suggest that this is possible, but I can find no documentation that explains how to pass dynamic information out in an External Page URL. Any suggestions?
UPDATE: With some additional hacking, I've discovered that I can get a Session ID returned using the following syntax:
some.url/query?session={!$$SESSION}
and I can get User ID using this syntax:
some.url/query?userid={!$$USER.ID}
I have not yet been successful getting task related detail. {!$$TASK.ID} returns null, whether called from the dashboard creation page, or from a tab embedded on a Task layout.
Are there any other secret wildcard variables and how to use them?
Solution found. The following syntax will cause Workfront to return the Session and ID of the object from which it is called:
These objects can be used in an API call to get other information related to the object, such as referenceNumber. Credit to this page from AtAppStore, which is where I found the syntax. http://store.atappstore.com/index.php/executive-summary/