Best listening experience is on Chrome, Firefox or Safari. Subscribe to Federal Drive’s daily audio interviews on Apple Podcasts or PodcastOne.
Congress has hundreds of members, thousands of employees, and a collection of monumental buildings. Now it has an application programming interface, or API. For more about APIs and how this one will help spread information about the legislative branch, the Federal Drive with Tom Temin spoke with product owner Andrew Weber and the director of IT design and...
Congress has hundreds of members, thousands of employees, and a collection of monumental buildings. Now it has an application programming interface, or API. For more about APIs and how this one will help spread information about the legislative branch, the Federal Drive with Tom Temin spoke with product owner Andrew Weber and the director of IT design and development, Jim Karamanis, both from the Library of Congress.
Tom Temin: Good to have you both on.
Insight by Sonatype: Agencies must consider security, user experience, culture and overall integration to create a successful software development process. Find out how three agencies overcame the challenges and moved to DevSecOps.
Andrew Weber: It’s good to be here.
Jim Karamanis: Good to be here. Thank you.
Tom Temin: And Jim Karamanis, we’ll start with you. I guess the implication is that in addition to all those members and buildings, there’s a lot of data that Congress generates.
Jim Karamanis: Yeah, there’s a tremendous amount of data and there’s a big need in the community to be able to access it directly machine to machine.
Tom Temin: All right. And machine to machine takes an API. Andrew, what exactly in layman’s terms is an application programming interface? And how does it help?
Andrew Weber: It’s a way for computers to take the data from Congress.gov and display in other places. So it’s just one more tool in our arsenal to help share federal legislation more broadly. Congress.gov is the primary access point for the website. But now we’ll be able to share that through the machine and machine directly.
Tom Temin: And how did this effort to create this API, I guess it’s a set of APIs, that fell to the Library of Congress and not say, there is an IT operation somewhere there on Capitol Hill, also?
Jim Karamanis: So the Library of Congress has been the steward of this data for a couple of decades now. So we are actually the ones that provide Congress.gov for Congress. So we are the stewards of the data. Thus, we are the ones to make the API available to the public.
Tom Temin: And give us a sense of the types of data, the range of data, the subjects, what does it look like to someone that knows databases?
Andrew Weber: The different collections that we have on Congress.gov are accessible through the API, and we’re building out so everything will be there. But right now, there’s legislation, there’s the member feeds, committee reports, things like that, that you can access.
Tom Temin: Because when I see legislation, normally all I get is a big, giant PDF. But is there some machine readable format that this also exists in, and maybe the system that generates the PDF?
Andrew Weber: So in addition to the PDF, there’s the text versions, but we also, there’s the summaries, the Congressional Research Service has the summaries will be available through the API. As well as the actions, the status steps for the legislation, as well. So it’s the total package about the piece of legislation.
Tom Temin: All right, and how many? I mean, are there thousands of databases, hundreds, millions, what’s the scope of the whole project here?
Andrew Weber: So there are some high level databases that has the legislation, and then the different types of material that we have on the site as well. So the Congressional Record, members that you can pull from if you go to api.congress.gov, you can see the listing of all the points that you can start to use the API with.
Tom Temin: And maybe give us a sense of what someone external might want to do, and how can they do it with the API, for example, every time Congress mentions this thing, or that thing, or just maybe make this living for us, so that we can get a sense of how it might be used? Jim?
Jim Karamanis: So there’s a variety of external people that use the data, some sell the data, some provide it for public use, data transparency advocates. So it depends what the need is. But it does enable you to create relationships to the data that you might not necessarily see on Congress.gov. For instance, people like to see who voted on what.
Tom Temin: So in other words, someone could create an application to see how these six members voted on something containing this particular piece of information or this particular topic.
Jim Karamanis: Absolutely.
Tom Temin: But it goes deeper than just key words and that kind of thing. Fair to say?
Jim Karamanis: Yeah, very much so, but it requires an understanding of the data in order to be able to create those experiences.
Tom Temin: And how does one get that understanding? Is it by searching the APIs or the list of databases? Or how would you know what’s there?
Andrew Weber: We do have a lot of documentation on GitHub. So if you go to api.congress.gov, there’s a link to our GitHub space where we document changes to the API, some enhancements, as well as just a little bit of how to use and how to start with the API itself. If you have any questions or you’re having an issue with a particular part of the API, that’s where you can also report an issue where we’re reviewing those and starting to work on little bug fixes or possible future enhancements to the API.
Tom Temin: And we’re speaking with Andrew Weber. He’s a product owner, and with Jim Karamanis, director of IT design and development, both with the Library of Congress and give us a sense of how you went about developing the API. Do you have people there that can program these things, or did you have to get a contract and have a contractor do it?
Jim Karamanis: So we have both actually, we have internal resources at the Library of Congress, that architect and develop systems. We also use contractors to help with the development.
Tom Temin: And what are the security implications here? Do people that want to build an application just download the database and then it’s on their systems? Or do they build applications that are constantly hitting the Library of Congress repository?
Jim Karamanis: So the answer is yes, it can work either way. But the API has been built in a resilient way that we’re able to handle any traffic that will hit the API.
Tom Temin: And can Congress itself benefit from understanding itself better in its own history and its own activities? Because sometimes it looks like, you know, they could use a little continuity knowledge up there.
Jim Karamanis: Absolutely. And sharing data across the hill is something that’s been happening for a long time. And there are entities amongst the legislative branch agencies that do pull directly from Congress.gov via the API.
Tom Temin: And I imagine federal agencies wanting to know, say, the legal situation under which they’re writing a rule. What’s the history here? What might have been some legislative changes they overlooked possibly that does happen from time to time, or preparing a legal situation. I imagine, there’s lots of application that agencies themselves could make of this.
Jim Karamanis: Well, that’s right, Tom, and there are agencies that have been scraping this data in the past, and they’re now able to directly get to the data via the API.
Tom Temin: All right, I presume there’s no charge for the APIs. What do people do that want to get started?
Andrew Weber: You can go to api.congress.gov, click register, and you can register, you submit your email address, and you’ll get an API key. And then you can start going from there. It’s really pretty simple to get that API key.
Tom Temin: And can people that are, again, trying to make sense of this and build applications, can the API be used for other data sources outside of the Library of Congress, or they need somebody else’s API to do that?
Andrew Weber: Yeah, I would think that you might be able to see where our API might line up and meet with someone else’s API and kind of combine a little bit. But it needs some expertise and knowledge on how to do that.
Tom Temin: We need an API to APIs, I guess, someday. And well, that could go on forever. And you’ve got an event. And you’re going to roll this out and kind of explain it to interested parties. Tell us about that.
Andrew Weber: Yeah, we’re very excited. We’re going to have our third Congress.gov virtual public forum. It’s on Sept. 21. So Wednesday, it’s from 1:30 to 4:30, you can go ahead and register. And you can see that the Library of Congress’s blog and there’s a story on the homepage of Congress.gov. There’s a link to the events, you can register it and you can also submit feedback. Part of this forum is that it’s a time for us to gather feedback from all Congress.gov users. But one of the items on the agenda is a panel presentation where we’re going to talk about the new API. We’re also going to talk about some of the recent enhancements to Congress.gov over the last year since the last public forum. And so it’s a great time to also hear from Congress.gov data partners from all across Capitol Hill, the House and the Senate, and GPO, who work hand in hand with us on Congress.gov.
Tom Temin: And by the way, have any members expressed interest in this and saying, hey, thanks for doing this.
Andrew Weber: We did see a recent tweet by Rep. Steny Hoyer (D-Md.) who was very appreciative of the API that just watched.
Tom Temin: All right, let’s hope some others join the bandwagon here. Andrew Weber is product owner, and Jim Karamanlis is director of IT design and development both with the Library of Congress. Thanks so much for joining me.
Jim Karamanis: Thank you, Tom.