{
    "version" : "https://jsonfeed.org/version/1",
    "content" : "news",
    "type" : "single",
    "title" : "How to Get Started with APIs |Digital.gov",
    "description": "How to Get Started with APIs",
    "home_page_url" : "/preview/gsa/digitalgov.gov/cm-topics-button-component/","feed_url" : "/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/03/12/how-to-get-started-with-apis/index.json","item" : [
    {"title" :"How to Get Started with APIs","summary" : "Audit Research existing APIs Regardless of your agency’s level of progress in API production, your first step is to create a developer hub that links to any of your agency’s existing APIs. This can help identify current efforts and connect you with others in your agency already working on APIs. Follow up with a deeper","date" : "2013-03-12T12:28:11-04:00","date_modified" : "2024-04-02T09:45:13-04:00","authors" : {"gray-brooks" : "Gray Brooks"},"topics" : {
        
            "application-programming-interface" : "Application programming interface",
            "software-engineering" : "Software Engineering"
            },"branch" : "cm-topics-button-component",
      "filename" :"2013-03-12-how-to-get-started-with-apis.md",
      
      "filepath" :"news/2013/03/2013-03-12-how-to-get-started-with-apis.md",
      "filepathURL" :"https://github.com/GSA/digitalgov.gov/blob/cm-topics-button-component/content/news/2013/03/2013-03-12-how-to-get-started-with-apis.md",
      "editpathURL" :"https://github.com/GSA/digitalgov.gov/edit/cm-topics-button-component/content/news/2013/03/2013-03-12-how-to-get-started-with-apis.md","slug" : "how-to-get-started-with-apis","url" : "/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/03/12/how-to-get-started-with-apis/","content" :"\u003ch2 id=\"audit\"\u003eAudit\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003e\u003cstrong\u003eResearch existing APIs\u003c/strong\u003e \u003cdiv class=\"image\"\u003e\n  \u003cimg\n    src=\"https://s3.amazonaws.com/digitalgov/_legacy-img/2014/08/250-x-86-API-letter-blocks-23575697-Hemera-Technologies-PhotoObjects.net-Thinkstock-87667306.jpg\"\n    alt=\"Children\u0026#39;s building blocks letters spelling A P I.\"/\u003e\u003c/div\u003e\n\n\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eRegardless of your agency’s level of progress in API production, your first step is to create a developer hub that links to any of your agency’s existing APIs. This can help identify current efforts and connect you with others in your agency already working on APIs.\u003c/p\u003e\n\u003cp\u003eFollow up with a deeper scan for APIs that your agency may already be publishing:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eTarget site-specific search queries\u003c/strong\u003e using advanced search operators within commercial search engines. You may be able to find APIs from your agency by searching queries such as:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=api+site%3Agsa.gov\"\u003eapi site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=application+programming+interface+site:gsa.gov\"\u003eapplication programming interface site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=application+program+interface+site%3Agsa.gov\"\u003eapplication program interface site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"http://www.google.com/search?q=json+site%3Agsa.gov\"\u003ejson site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=api+site%3Agsa.gov+OR+site%3Ahowto.gov+OR+site%3Ausa.gov\"\u003eapi site:YOURAGENCY.gov OR site:INITIATIVE.gov OR site:INITIATIVE2.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=json+site%3Agsa.gov+OR+site%3Ahowto.gov+OR+site%3Ausa.gov\"\u003ejson site:YOURAGENCY.gov OR site:INITIATIVE.gov OR site:INITIATIVE2.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=%22web+service%22+site:gsa.gov\"\u003e“web service” site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=wsdl+site%3Agsa.gov\"\u003ewsdl site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.google.com/search?q=wadl+site%3Agsa.gov\"\u003ewadl site:YOURAGENCY.gov\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese queries can help you find loose APIs already generated by other teams at your agency. A quick review of 10+ pages of results are recommended because results from one API may take up the first few pages before returning results from a different API. The same queries should be performed for each of your domains. This can help jumpstart an agency’s developer hub with minimum effort.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eReview repositories\u003c/strong\u003e including \u003ca href=\"http://www.programmableweb.com/apis/directory/\"\u003eProgrammable Web\u003c/a\u003e, \u003ca href=\"http://www.usgovxml.com/\"\u003eUSgovXML\u003c/a\u003e, and \u003ca href=\"http://www.data.gov/\"\u003eData.gov\u003c/a\u003e. Each of these indexes includes other material, requiring you to search for your agency name or abbreviation, then filter the results in different ways.\u003c/p\u003e\n\u003col start=\"2\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eAudit existing content and services \u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eReview current Web services, for example, a system for checking the status of a request online. You can find some great potential candidates to take an existing Web service and make it available via API.\u003c/p\u003e\n\u003col start=\"3\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eWeigh early candidates for API production\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eOf candidate items you’ve assembled in the previous step, ask the following questions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWhich receive the most site traffic?\u003c/li\u003e\n\u003cli\u003eWhich does the agency see as the most important to its mission?\u003c/li\u003e\n\u003cli\u003eWhich would particularly lend itself to integration in a mobile app, embedding on third-party sites, or combining with another data set in a mashup?\u003c/li\u003e\n\u003cli\u003eWhich are particularly easy to make available as APIs? \u003cem\u003e(note step 6)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eEach agency has different priorities and needs that will impact these questions, but combine the answers to those questions to decide on top candidates for making available via API.\u003c/p\u003e\n\u003cp\u003eIf your agency is just getting started with API generation, it may be worth beginning with low-hanging fruit—services that would be easy to produce. Alternatively, there are also successful examples of agencies starting with their largest and most popular datasets for greatest impact.\u003c/p\u003e\n\u003ch2 id=\"assemble-components\"\u003eAssemble Components\u003c/h2\u003e\n\u003col start=\"4\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eCoordinate with relevant stakeholders\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eAs with any addition to an agency’s Web presence, it is important to work with your agency’s network operations team, IT security team, and general counsel per your normal workflows. For some, this may be the first time that they have been involved in an API rollout, and they may rely on you to familiarize them with some of the underlying \u003ca href=\"/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/04/30/apis-in-government/\" title=\"APIs in Government\"\u003ephilosophy and methods of APIs in government\u003c/a\u003e.\u003c/p\u003e\n\u003col start=\"5\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003ePrepare documentation and other components\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eJust turning on an API isn’t enough. It’s necessary to create a landing page for the documentation and related resources and to ensure that prospective users can find this material. Consult the \u003ca href=\"/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/05/16/api-release-kit/\" title=\"API Release Kit\"\u003eAPI release kit\u003c/a\u003e for a comprehensive review of these components and open-source options for maintaining them.\u003c/p\u003e\n\u003col start=\"6\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eActivate the API\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eThere are \u003ca href=\"/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/03/12/how-to-make-apis-an-overview/\" title=\"How to Make APIs—An Overview\"\u003eseveral ways to create an API\u003c/a\u003e. Your team may have the expertise, but if not, you should be able to collaborate with your IT department and any system owner on high-level requirements and leave the API creation to your agency’s developers. If these opportunities do not exist, some methods of API creation entail useful tools that can be operated without deep technical skills.\u003c/p\u003e\n\u003col start=\"7\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eTest\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eOnce the API has been readied for launch, test the functionality that is documented for the API. Many agencies prefer to factor in an extra period of time for private beta testing, giving access to a select number of trusted associates to test the functionality. If not done as a formal process, it is still highly advisable to have developers review the product and thoroughly test it from outside of your network’s firewall before launch.\u003c/p\u003e\n\u003cp\u003eYour network operations staff should be able to provide automated tools for load-testing as well, a process which can identify and fix potential problems that would not otherwise become visible before launch.\u003c/p\u003e\n\u003ch2 id=\"implement\"\u003eImplement\u003c/h2\u003e\n\u003col start=\"8\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eCreate /developer hub\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eEach API should have a landing page. The landing pages should be linked to a main developer hub. Even if your agency is generating its first API, it is not too early to release it as part of a developer hub. If your agency already has launched several APIs but doesn’t yet have a consolidated hub, it’s definitely worth assembling one at this stage and growing it from this point on. Consult the \u003ca href=\"/preview/gsa/digitalgov.gov/cm-topics-button-component/2013/05/21/developer-kit/\"\u003e/Developer kit\u003c/a\u003e for a comprehensive review of the developer hub components and open-source options for maintaining them.\u003c/p\u003e\n\u003col start=\"9\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003ePlan the launch and follow-up\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eIn the lead-up to the public launch of the API, plan for any communications push that your agency may want to do to bring attention to the API release (and/or the launching of a developer’s hub). Developers need to be aware of your API to use it. Some agencies issue a press release if the API that is produced is a substantial contribution. Use social media, publish blog posts, employ listservs or mailing lists, and promote within \u003ca href=\"https://groups.google.com/forum/#!forum/us-government-apis\"\u003egovernment communities\u003c/a\u003e to get the word out.\u003c/p\u003e\n\u003cp\u003eIt’s important to ensure that the agency has some commitment for this API. The post-launch planning should factor in any needs for continued API maintenance and developer support. Just like any other digital project, APIs needs continued investment to be successful.\u003c/p\u003e\n\u003col start=\"10\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eRelease API\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eWhen launching the API publicly, consider a soft launch. Soft launching lets you gather data on a product’s usage and acceptance before making it generally available. If there are concerns about any of the technical or practical issues involved, the agency can slowly introduce it to prospective users and monitor usage.\u003c/p\u003e\n\u003cp\u003eThen, when any resulting concerns are worked out, even weeks or months later, the agency can provide a formal announcement to ensure that the wider community eventually learns of it. Register the API at \u003ca href=\"http://www.programmableweb.com/\"\u003ewww.programmableweb.com\u003c/a\u003e. __\u003c/p\u003e\n\u003col start=\"11\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eLaunch developer support program    \u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e\u003cstrong\u003e​\u003c/strong\u003eIn addition to ensuring the health and uptime of the API, there should also be an associated developer support program that is now activated. Two \u003ca href=\"https://digital.gov/2013/05/16/api-release-kit/\" title=\"API Release Kit\"\u003eimportant ingredients\u003c/a\u003e for any healthy API are: a feedback mechanism that allows developers to communicate with the API producer; and a means of broadcasting news and updates to developers who may be consuming the API. This role will require an owner lest it fall by the wayside.\u003c/p\u003e\n\u003ch2 id=\"track-progress\"\u003eTrack progress\u003c/h2\u003e\n\u003col start=\"12\"\u003e\n  \u003cli\u003e\n    \u003cstrong\u003eTrack Progress\u003c/strong\u003e\n  \u003c/li\u003e\n\u003c/ol\u003e_​_Monitor the API analytics as well as reviewing how developers are using the API to [track the progress of the API](http://blog.programmableweb.com/2010/09/15/metrics-for-content-apis-an-npr-case-study/). Since the goal is to support developer efforts to further spread your agency’s information and services, quickly address concerns and problems. Developers are your customers. Don\u0026#8217;t let them give up in frustration.\n\u003ch2 id=\"repeat\"\u003eRepeat\u003c/h2\u003e\n\u003cp\u003eAPIs are under continual development. Launch is the beginning of building this important content tool. The more that an agency grows its API catalog, the more that new developers will visit the agency’s hub and consume the agency’s content. Then, more citizens are served better and the agency’s impact grows.\u003c/p\u003e\n\u003cp\u003eYour APIs need to have staff assigned to monitor and improve them as well as helping to grow your API catalog.\u003c/p\u003e\n\u003cp\u003eMoving forward:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInclude APIs when reviewing upcoming development projects, either of new systems or overhauls of old systems. By making a point to include API access as one of the project requirements, the production can take place far more easily and less expensively.\u003c/li\u003e\n\u003cli\u003eLook for opportunities to use your APIs internally. By using your own APIs to maintain applications and parts of your Web presence, you become a vested stakeholder. You will benefit by using your APIs to potentially provide new services, speed product development, and demonstrate uses of your API to external developers and customers.\u003c/li\u003e\n\u003cli\u003eAs your agency generates more APIs, work to normalize the format, structure, and documentation of the APIs. Developers will reward a more consistent and predictable API ecosystem with greater use, but this practice also makes agency maintenance and developer support easier, too.\u003c/li\u003e\n\u003c/ul\u003e\n"}
  ]
}
