{"id":2736,"date":"2023-11-22T11:16:22","date_gmt":"2023-11-22T11:16:22","guid":{"rendered":"https:\/\/www.infobip.com\/developers\/?p=2736"},"modified":"2023-11-22T11:21:12","modified_gmt":"2023-11-22T11:21:12","slug":"the-must-have-content-to-include-in-your-api","status":"publish","type":"post","link":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api","title":{"rendered":"The must-have content to include in your API\u00a0documentation"},"content":{"rendered":"\n<p>I keep hearing the phrase that API reference is the face of the API. And I wholeheartedly agree with it. However, even though a lot of companies do share this point of view, there\u2019s still not enough done for the API reference in terms of content as opposed to the API design itself and its&nbsp;UI representation.&nbsp;<\/p>\n\n\n\n<p>Content-centric API reviews are still not a thing, and I think it\u2019s time to change that.&nbsp;<\/p>\n\n\n\n<p>This blog post lists the API content<em> must-haves<\/em> so that you make sure your API reference provides the best possible developer experience for your users.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">API reference content must-haves&nbsp;<\/h2>\n\n\n\n<p>There are some aspects of the API reference without which a developer reading documentation gets lost immediately. And to make things worse, without testing the API, they won\u2019t know the correct answer, unless it\u2019s documented. &nbsp;<\/p>\n\n\n\n<p>It is then crucial to make sure we can answer as many potential questions with our content as possible.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Do all fields include a description?&nbsp;<\/h3>\n\n\n\n<p>All fields you list in the API should have a description. No matter how much you think your field name is self-explanatory, it important that the description verifies that assumption.&nbsp;<\/p>\n\n\n\n<p>Oftentimes, adding information on what you can use a field for or where would this data be displayed adds a lot of value to the API user, even if the field\u2019s name already provides you with enough information to make a valid request.&nbsp;&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"692\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-7-1024x692.png\" alt=\"Stripe API reference example\" class=\"wp-image-2741\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-7-1024x692.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-7-300x203.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-7-768x519.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-7.png 1320w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/stripe.com\/docs\/api\/customers\/create\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Stripe API reference<\/em><\/a><em> provides context to their seemingly self-explanatory fields, such as email, description, or metadata.<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Is this field required?\u00a0<\/h3>\n\n\n\n<p>Each field documented in the API reference should indicate whether it\u2019s mandatory. Without it, a developer using the API is subjected to a guessing game right at the beginning of their user journey when they\u2019re constructing their API request.&nbsp;<\/p>\n\n\n\n<p>It is frustrating and can very quickly lead to the abandonment of the project in search for a similar but better documented API. It is especially important if your API includes a lot of nested parameters which then can prove extremely time consuming to test which combination of parameters will get accepted as a valid request.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What type is this field?\u00a0<\/h3>\n\n\n\n<p>It\u2019s tremendously helpful to know the field type while working with APIs. And yes, I know, you can check this in a request sample, but what if you have added your field in the latest release and forgot to update your sample, or what if your request schema is gigantic and doesn\u2019t really list all the fields.&nbsp;<\/p>\n\n\n\n<p>To remove all unnecessary guesswork for your audience and additional work like executing typeOff(), add the field type to your schema. It\u2019s quite fast for you to document (so, low hanging fruit here) and can be a valuable source of information for developers who use your API. &nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"339\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-4-1024x339.png\" alt=\"\" class=\"wp-image-2738\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-4-1024x339.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-4-300x99.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-4-768x254.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-4.png 1250w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/docs.github.com\/en\/rest\/branches\/branches?apiVersion=2022-11-28\" target=\"_blank\" rel=\"noreferrer noopener\"><em>GitHub API reference<\/em><\/a><em> flags their required fields and displays the field type<\/em>.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">How to represent a variable?<\/h3>\n\n\n\n<p>If you have a big product stack and a lot of APIs, be consistent and land on one way to represent your variables. It doesn\u2019t really matter if you use {} or :, it is important that you do it consistently across all APIs so that your user, once they read one API, can immediately start working with the next one, because all content patterns already&nbsp;feel familiar to them.&nbsp;<\/p>\n\n\n\n<p>Inconsistency, even a small one like this, confuses the brain. It hates incomplete information because it means that it will have to do some heavy lifting itself and lose valuable energy filling in the gaps in the process.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"83\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-3-1024x83.png\" alt=\"\" class=\"wp-image-2737\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-3-1024x83.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-3-300x24.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-3-768x62.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-3.png 1532w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/devcenter.heroku.com\/articles\/platform-api-reference#app-setup\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Heroku API reference<\/em><\/a><em> represents their variables with {} and uses underscores for their names<\/em>.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">How to represent deprecated endpoints\/fields?\u00a0<\/h3>\n\n\n\n<p>It\u2019s a natural process to have endpoints deprecated and end their life cycle and support. But doing so without a proper documentation can have a potentially disastrous effects to companies that depend on that particular endpoint.&nbsp;<\/p>\n\n\n\n<p>It is then crucial that we communicate endpoint deprecation in a manner that provides as much necessary information for the API users as possible:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When would the endpoint be sunsetted?&nbsp;<\/li>\n\n\n\n<li>What\u2019s going to happen? Will the endpoint be deleted, or will it still exist unsupported?&nbsp;<\/li>\n\n\n\n<li>Is there any endpoint that\u2019s replacing the old one? What\u2019s its URL?<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"451\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8-1024x451.png\" alt=\"\" class=\"wp-image-2742\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8-1024x451.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8-300x132.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8-768x338.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8-1536x676.png 1536w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-8.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/www.infobip.com\/docs\/api\/channels\/whatsapp\/whatsapp-service-management\/deprecated-create-whatsapp-template\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Infobip API reference<\/em><\/a><em> tags their endpoint with a deprecation banner and crosses it out in their table of contents for additional visibility. The endpoint description provides information on sunsetting dates and a link to the endpoint replacing the old one<\/em>.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Does my description include internal jargon?\u00a0\u00a0<\/h3>\n\n\n\n<p>Be the compassionate writer we know you are and ask yourself this question: if you were a beginner, would you understand the term used in your field description? If you have doubts, then it means it\u2019s unclear and most probably would benefit from either a link to a glossary page or a short tooltip with an explanation.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"171\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6-1024x171.png\" alt=\"\" class=\"wp-image-2740\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6-1024x171.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6-300x50.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6-768x128.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6-1536x256.png 1536w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-6.png 1570w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/www.infobip.com\/docs\/api\/channels\/sms\/sms-messaging\/outbound-sms\/send-sms-message\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Infobip API reference<\/em><\/a><em> includes links to concepts that beginner developers can struggle to understand<\/em>.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Are my error messages user-friendly?\u00a0<\/h3>\n\n\n\n<p>Your API status and error codes are your first line of direct communication with API users. Use that to your advantage and make sure that communication is as informative from the start as possible. Moreover, treat your error messages as documentation and make sure they are kept up to date and maintained so that they don\u2019t go stale.&nbsp;<\/p>\n\n\n\n<p>Adding a bit of context and actionable steps goes a long way, it can even prevent a user from submitting a support ticket as they can resolve the problem in a fast and efficient way on their own.&nbsp;<\/p>\n\n\n\n<p>By context, I mean all necessary information that you think may help your users resolve a problem. Sometimes less is more, so instead of stating an obvious fact that something cannot be done, it is more valuable to say what can be done instead. For instance, if you only support certain types of file&nbsp;in your request, write that information in your error message rather than informing them that this file type is not supported.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"71\" src=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5-1024x71.png\" alt=\"\" class=\"wp-image-2739\" srcset=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5-1024x71.png 1024w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5-300x21.png 300w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5-768x53.png 768w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5-1536x107.png 1536w, https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/image-5.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/dev.wix.com\/docs\/rest\/articles\/getting-started\/errors\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Wix API reference<\/em><\/a><em> adds more context to their standard error codes and provides possible resolution to the issue in brackets.<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">From great API content to seamless integration\u00a0<\/h2>\n\n\n\n<p>In essence, the API reference stands as the gateway to seamless integration, yet its content often remains undervalued. Clear and consistent content strategy and approach when dealing with the API reference is crucial to transform any API reference into a user-friendly documentation that offers a pain-free and efficient developer journey to its users, poising them for success from the get going.&nbsp;<\/p>\n\n\n\n<p>In my next blog post, I&nbsp;will discuss some <strong>nice-to-haves<\/strong> in the API reference that can have a pivotal role in improving accessibility, usability, and reliability of an API.&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I keep hearing the phrase that API reference is [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":2747,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[28,254],"tags":[43,46],"coauthors":[134],"class_list":["post-2736","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-post","category-engineering-practices","tag-api","tag-developer-docs"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The must-have content to include in your API\u00a0documentation - Infobip Developers Hub<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The must-have content to include in your API\u00a0documentation - Infobip Developers Hub\" \/>\n<meta property=\"og:description\" content=\"I keep hearing the phrase that API reference is [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\" \/>\n<meta property=\"og:site_name\" content=\"Infobip Developers Hub\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/infobip\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-22T11:16:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-22T11:21:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Joanna Suau\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoannaSuau\" \/>\n<meta name=\"twitter:site\" content=\"@InfobipDev\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Joanna Suau\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\"},\"author\":{\"name\":\"Joanna Suau\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/707842627f046bb5722c37a9fdc85d62\"},\"headline\":\"The must-have content to include in your API\u00a0documentation\",\"datePublished\":\"2023-11-22T11:16:22+00:00\",\"dateModified\":\"2023-11-22T11:21:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\"},\"wordCount\":1160,\"publisher\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg\",\"keywords\":[\"API\",\"developer docs\"],\"articleSection\":[\"Blog Post\",\"Engineering Practices\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\",\"url\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\",\"name\":\"The must-have content to include in your API\u00a0documentation - Infobip Developers Hub\",\"isPartOf\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg\",\"datePublished\":\"2023-11-22T11:16:22+00:00\",\"dateModified\":\"2023-11-22T11:21:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage\",\"url\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg\",\"contentUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg\",\"width\":2560,\"height\":1707,\"caption\":\"Photo by Douglas Lopes on Unsplash\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.infobip.com\/developers\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The must-have content to include in your API\u00a0documentation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#website\",\"url\":\"https:\/\/www.infobip.com\/developers\/\",\"name\":\"Infobip Developers Hub\",\"description\":\"Build meaningful customer relationships across any channel\",\"publisher\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.infobip.com\/developers\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\",\"name\":\"Infobip Developers Hub\",\"url\":\"https:\/\/www.infobip.com\/developers\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png\",\"contentUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png\",\"width\":696,\"height\":696,\"caption\":\"Infobip Developers Hub\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/infobip\/\",\"https:\/\/x.com\/InfobipDev\",\"https:\/\/www.youtube.com\/channel\/UCUPSTy53VecI5GIir3J3ZbQ\",\"https:\/\/github.com\/infobip-community\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/707842627f046bb5722c37a9fdc85d62\",\"name\":\"Joanna Suau\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/image\/cccb05b0dfa8fde5d00a09f4047f929e\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b632afa61f1a27c1a0d823a9ec17eeb047cf476c570012dd90ba88a1bb9b1585?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b632afa61f1a27c1a0d823a9ec17eeb047cf476c570012dd90ba88a1bb9b1585?s=96&d=mm&r=g\",\"caption\":\"Joanna Suau\"},\"description\":\"Joanna is a Developer Educator at Infobip, working in the Developer Relations team.\",\"sameAs\":[\"https:\/\/medium.com\/@joanna.suau\",\"https:\/\/www.linkedin.com\/in\/joannasuau\/\",\"https:\/\/x.com\/JoannaSuau\"],\"url\":\"https:\/\/www.infobip.com\/developers\/blog\/author\/joanna\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The must-have content to include in your API\u00a0documentation - Infobip Developers Hub","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api","og_locale":"en_US","og_type":"article","og_title":"The must-have content to include in your API\u00a0documentation - Infobip Developers Hub","og_description":"I keep hearing the phrase that API reference is [&hellip;]","og_url":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api","og_site_name":"Infobip Developers Hub","article_publisher":"https:\/\/www.facebook.com\/infobip\/","article_published_time":"2023-11-22T11:16:22+00:00","article_modified_time":"2023-11-22T11:21:12+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg","type":"image\/jpeg"}],"author":"Joanna Suau","twitter_card":"summary_large_image","twitter_creator":"@JoannaSuau","twitter_site":"@InfobipDev","twitter_misc":{"Written by":"Joanna Suau","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#article","isPartOf":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api"},"author":{"name":"Joanna Suau","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/707842627f046bb5722c37a9fdc85d62"},"headline":"The must-have content to include in your API\u00a0documentation","datePublished":"2023-11-22T11:16:22+00:00","dateModified":"2023-11-22T11:21:12+00:00","mainEntityOfPage":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api"},"wordCount":1160,"publisher":{"@id":"https:\/\/www.infobip.com\/developers\/#organization"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage"},"thumbnailUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg","keywords":["API","developer docs"],"articleSection":["Blog Post","Engineering Practices"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api","url":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api","name":"The must-have content to include in your API\u00a0documentation - Infobip Developers Hub","isPartOf":{"@id":"https:\/\/www.infobip.com\/developers\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage"},"thumbnailUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg","datePublished":"2023-11-22T11:16:22+00:00","dateModified":"2023-11-22T11:21:12+00:00","breadcrumb":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#primaryimage","url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg","contentUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/11\/douglas-lopes-ehyV_XOZ4iA-unsplash-scaled.jpg","width":2560,"height":1707,"caption":"Photo by Douglas Lopes on Unsplash"},{"@type":"BreadcrumbList","@id":"https:\/\/www.infobip.com\/developers\/blog\/the-must-have-content-to-include-in-your-api#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.infobip.com\/developers\/"},{"@type":"ListItem","position":2,"name":"The must-have content to include in your API\u00a0documentation"}]},{"@type":"WebSite","@id":"https:\/\/www.infobip.com\/developers\/#website","url":"https:\/\/www.infobip.com\/developers\/","name":"Infobip Developers Hub","description":"Build meaningful customer relationships across any channel","publisher":{"@id":"https:\/\/www.infobip.com\/developers\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.infobip.com\/developers\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.infobip.com\/developers\/#organization","name":"Infobip Developers Hub","url":"https:\/\/www.infobip.com\/developers\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/","url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png","contentUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png","width":696,"height":696,"caption":"Infobip Developers Hub"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/infobip\/","https:\/\/x.com\/InfobipDev","https:\/\/www.youtube.com\/channel\/UCUPSTy53VecI5GIir3J3ZbQ","https:\/\/github.com\/infobip-community"]},{"@type":"Person","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/707842627f046bb5722c37a9fdc85d62","name":"Joanna Suau","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/image\/cccb05b0dfa8fde5d00a09f4047f929e","url":"https:\/\/secure.gravatar.com\/avatar\/b632afa61f1a27c1a0d823a9ec17eeb047cf476c570012dd90ba88a1bb9b1585?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b632afa61f1a27c1a0d823a9ec17eeb047cf476c570012dd90ba88a1bb9b1585?s=96&d=mm&r=g","caption":"Joanna Suau"},"description":"Joanna is a Developer Educator at Infobip, working in the Developer Relations team.","sameAs":["https:\/\/medium.com\/@joanna.suau","https:\/\/www.linkedin.com\/in\/joannasuau\/","https:\/\/x.com\/JoannaSuau"],"url":"https:\/\/www.infobip.com\/developers\/blog\/author\/joanna"}]}},"_links":{"self":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2736","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/comments?post=2736"}],"version-history":[{"count":5,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2736\/revisions"}],"predecessor-version":[{"id":2748,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2736\/revisions\/2748"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/media\/2747"}],"wp:attachment":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/media?parent=2736"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/categories?post=2736"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/tags?post=2736"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/coauthors?post=2736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}