I’m trying to get campaign reports out of IdentityNow using API - I’ve done this before using private/v1 APIs but have the opportunity to rework it using v3 APIs.
However, having issues with these APIs:
Get Campaign Reports is listed in the documentation for v3 api, however when I attempt to call it via /v3/campaigns/{{campaignId}}/reports
I receive a 404 response:
{
"error": "No message available"
}
Get Campaign Reports, when accessed via the working beta endpoint, the response I get back doesn’t match the documentation:
Is the documentation incorrect? Or am I making a call incorrectly? or is this a bug? Because the response I’m receiving doesn’t look like a v3 API call response. It’s also missing the report id which is kind of important.
The request URL I used to get this response is:
https://{{orgname}}.api.identitynow.com/beta/campaigns/{{campaignid}}/reports
How do I actually retrieve the report? There doesn’t appear to be an API call for downloading the report. Do I need to use the old v1 API for this or is there a v3 API available?
I’m not finding a v3 version of campaign reports in our portal. Do you have a link you can share that points us to the v3 endpoint?
As for the beta endpoint, you are correct, the documentation does not match the actual result. This is a bug and I’m going to get this fixed. I’m also going to ask about the lack of an endpoint to download the report. You’re right, it should have a way to download the report. Thank you for bringing these issues to our attention!
In this case the API spec is incorrect. The api spec will need to be updated to reflect what the server is actually returning. However, I have requested the engineering team to use a date time type instead of Unix epoch for the lastRun field, since date time is standard for all of our beta/v3 APIs. This will break any existing users of this beta endpoint though, so we will need to consider how we want to proceed. If we do plan on changing it, it will be announced in the announcements channel.
For the download report endpoint, I’m talking to engineering directly at the moment to see when they can get to it. No need for an idea at this time. If one is needed then I will create it.
Thanks Colin - I honestly think the API implementation is pretty bad compared to the spec. Aside from the unix epoch issue described, it’s also missing the id. In fact the only useful information it returns is the “lastRun”
So I can’t even use this endpoint as it is, because without the ID I can’t download the report. This means I have to go back to using the unsupported private APIs for all report based calls, which is a disappointment.
I hope if you’re talking to the engineering team about adding a “retrieve report” API call, you can also ensure that the “get campaign reports” API call can also provide the required information for making this call