Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

July 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more

Reply
ScottF
Frequent Visitor

How can an API query reference another API query?

I'm making API calls to a call tracking service called ResponseTap. Their API allows you to return a list of many call IDs (e.g. clarity-us4-1459508541.810585), but with no further details such as call duration, source, etc. In a different type of call, I'm able to return full call details, but only for a single call ID. I would like to pull full call details (like the second API call) but for multiple call IDs (like the first API call). 

 

API Call 1 (multiple call IDs, no details)

 

let
Source = Xml.Tables(Web.Contents("https://dashboard.responsetap.com/api/1/accounts/5482/cdrids?fromDate=2016-04-01&toDate=2016-04-05")),
Table0 = Source{0}[Table],
Table1 = Table0{0}[Table],
#"Changed Type" = Table.TransformColumnTypes(Table1,{{"Element:Text", type text}})
in
#"Changed Type"

 

 

API Call 2 (single call ID, full details)

 

let
Source = Xml.Tables(Web.Contents("https://dashboard.responsetap.com/api/1/accounts/5482/fullCallRecords/clarity-us4-1459508541.810585")),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"cdrId", type text}, {"customerNumber", Int64.Type}, {"trackingNumber", Int64.Type}, {"businessNumber", Int64.Type}, {"campaignName", type text}, {"callDate", type datetime}, {"callDuration", Int64.Type}, {"callTalkTime", Int64.Type}, {"disposition", type text}, {"recorded", type logical}, {"sourceId", Int64.Type}, {"channelName", type text}, {"mediumName", type text}, {"mediumTypeName", type text}, {"numberGroupId", Int64.Type}, {"numberGroupName", type text}, {"callId", Int64.Type}})
in
#"Changed Type"

 

 

How could I replace the call ID in the second API call (clarity-us4-1459508541.810585) with a variable that would pull in call IDs from the first API call and report full call details for all of them? Thanks!

1 REPLY 1
Greg_Deckler
Community Champion
Community Champion

Here is a similar scenario that should help you out.

http://datachix.com/2014/05/22/power-query-functions-some-scenarios/

 

Basically, the concept is to turn your API Call 2 into a function that takes one or more parameters and then you call API Call 2 function for each row in API Call 1.

 

In your case, you may have to create multiple functions and custom columns that call those functions, or return everything in a comma-separated return value and then do a split on that column as a subsequent step in your API Call 1 query.



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
FabCon and SQLCon Barcelona 2026

FabCon & SQLCon – Barcelona 2026

Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.

60 days of Data Days Carousel

Data Days 2026

Join Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Top Solution Authors