library(httr2) # Read the list of covered funds (one GET, no key), naming your own project; # simplifyVector turns the list of funds into a data frame doc <- request("https://tickerinside.com/api/v1/funds.json") |> req_user_agent("MyProject/1.0 (+https://example.com)") |> req_perform() |> resp_body_json(simplifyVector = TRUE) # funds: read from their issuers' own files, with the date of the data writeLines(paste(doc$count, "funds from issuer files, as_of", doc$as_of)) # sec_funds: more US stock ETFs, from SEC filings, t and n as in funds writeLines(paste(doc$sec_count, "more from SEC filings, listed in sec_funds")) # One row per fund: t is the ticker, n the name writeLines(paste(doc$funds$t, doc$funds$n))