{"id":21239,"date":"2020-08-15T01:38:23","date_gmt":"2020-08-15T08:38:23","guid":{"rendered":"https:\/\/careerkarma.com\/blog\/?p=21239"},"modified":"2023-12-01T03:57:54","modified_gmt":"2023-12-01T11:57:54","slug":"python-typeerror-unhashable-type-dict","status":"publish","type":"post","link":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/","title":{"rendered":"Python TypeError: unhashable type: \u2018dict\u2019 Solution"},"content":{"rendered":"\n<p>The Python language is specific about what can be used as a key in a <a href=\"https:\/\/careerkarma.com\/blog\/python-add-to-dictionary\/\">dictionary<\/a>. In a Python dictionary, all keys must be hashable.<br><\/p>\n\n\n\n<p>If you try to use an unhashable key type when adding a key to a dictionary, you\u2019ll encounter the \u201cTypeError: unhashable type: \u2018dict\u2019\u201d error.<br><\/p>\n\n\n\n<p>In this guide, we talk about what this error means and why it is raised. We walk through an example of this error so you can learn how to solve it in your code.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">TypeError: unhashable type: \u2018dict\u2019<\/h2>\n\n\n\n<p>Dictionaries consist of two parts: keys and values. Keys are the identifiers that are bound to a value. When you reference a key, you\u2019ll be able to retrieve the value associated with that key.<br><\/p>\n\n\n\n<p>Only hashable objects can be keys in a dictionary. Immutable objects such as <a href=\"https:\/\/careerkarma.com\/blog\/python-substring\/\">strings<\/a>, <a href=\"https:\/\/careerkarma.com\/blog\/python-string-to-int\/\">integers<\/a>, <a href=\"https:\/\/careerkarma.com\/blog\/python-tuples\/\">tuples<\/a>, and frozensets are hashable, with some exceptions. Dictionaries, therefore, cannot be used as a key in a dictionary.<br><\/p>\n\n\n\n<p>To add an item to a dictionary, you must specify a valid hashable key. For instance, \u201cname\u201d is a valid key, but { \u201cname\u201d: \u201ctest\u201d } is not.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">An Example Scenario<\/h2>\n\n\n\n<p>Here, we write a program that adds all the cakes that have been sold more than five times at a bakery from one dictionary to another dictionary.<br><\/p>\n\n\n\n<p>Start by <a href=\"https:\/\/careerkarma.com\/blog\/python-array\/\">declaring a list<\/a> of cakes which contains dictionaries about each cake. We also define a dictionary in which we can store the cakes that have been sold more than five times.<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>cakes = [\n\t{\n&quot;name&quot;: &quot;Black Forest Gateau&quot;, &quot;sold&quot;: 3\n},\n{\n&quot;name&quot;: &quot;Carrot Cake&quot;, &quot;sold&quot;: 7\n},\n{\n&quot;name&quot;: &quot;Coconut and Lime Cake&quot;, &quot;sold&quot;: 9\n}\n]\nsold_more_than_five = {}<\/pre><\/div>\n\n\n\n<p>Our \u201ccakes\u201d list contains three dictionaries. Each dictionary contains two keys and values. The key names are \u201ccake\u201d and \u201csold\u201d.<br><\/p>\n\n\n\n<p>Now, we write a <a href=\"https:\/\/careerkarma.com\/blog\/python-for-loop\/\">for loop<\/a> that goes through our list of cakes and finds the ones that have been sold more than five times. Those cakes will be added to the \u201csold_more_than_five\u201d dictionary:<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>for c in cakes:\n\tif c[&quot;sold&quot;] &gt; 5:\n\t\tsold_more_than_five[c] = c[&quot;sold&quot;]\n\t\tprint(c[&quot;name&quot;] + &quot; has been sold more than five times.&quot;)\n\nprint(sold_more_than_five)<\/pre><\/div>\n\n\n\n<p>In our for loop, we compare whether the value of \u201csold\u201d in each dictionary is greater than 5. If it is, that item is added to our \u201csold_more_than_five\u201d dictionary. Then, a message is printed to the console informing the user that the particular cake has been sold more than five times.<br><\/p>\n\n\n\n<p>Once our loop has run, we print the \u201csold_more_than_five\u201d dictionary to the console.<br><\/p>\n\n\n\n<p>Run our code to make sure our program works:<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>Traceback (most recent call last):\n  File &quot;main.py&quot;, line 16, in &lt;module&gt;\n\tsold_more_than_five[c] = c[&quot;sold&quot;]\nTypeError: unhashable type: 'dict'<\/pre><\/div>\n\n\n\n<p>Our code returns an error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Solution<\/h2>\n\n\n\n<p>Our code does not work because we are trying to create a dictionary key using another dictionary.<br><\/p>\n\n\n\n<p>The value of \u201cc\u201d is equal to a dictionary from our &#8220;cakes&#8221; list. This means when we try to add an item to the \u201csold_more_than_five\u201d dictionary, we are accidentally trying to add a dictionary as a key:<br><\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>sold_more_than_five[c] = c[&quot;sold&quot;]<\/pre><\/div>\n\n\n\n<p>When our \u201cif\u201d statement is run on the \u201cCarrot Cake\u201d cake, our code tries to run:<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>sold_more_than_five[{&quot;name&quot;: &quot;Carrot Cake&quot;, &quot;sold&quot;: 7}] = 7<\/pre><\/div>\n\n\n\n<p>This is invalid because we\u2019re trying to add a dictionary as a key in a dictionary. We can solve this problem by using c[\u201cname\u201d] as the name of our dictionary key:<br><\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>sold_more_than_five[c[&quot;name&quot;]] = c[&quot;sold&quot;]<\/pre><\/div>\n\n\n\n<p>Run our code with this revised code:<br><\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre>Carrot Cake has been sold more than five times.\nCoconut and Lime Cake has been sold more than five times.\n\n{'Carrot Cake': 7, 'Coconut and Lime Cake': 9}<\/pre><\/div>\n\n\n\n<p>Our code runs successfully. We\u2019re now using the name of each cake as a key rather than a dictionary.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>The \u201cTypeError: unhashable type: \u2018dict\u2019\u201d error is raised when you try to create an item in a dictionary whose key is an unhashable object. Only immutable objects like strings, tuples, and integers can be used as a key in a dictionary.<br><\/p>\n\n\n\n<p>To solve this error, make sure that you only use hashable objects when creating an item in a dictionary. Now you\u2019re ready to solve this common Python error like a professional developer!<\/p>\n","protected":false},"excerpt":{"rendered":"The Python language is specific about what can be used as a key in a dictionary. In a Python dictionary, all keys must be hashable. If you try to use an unhashable key type when adding a key to a dictionary, you\u2019ll encounter the \u201cTypeError: unhashable type: \u2018dict\u2019\u201d error. In this guide, we talk about&hellip;","protected":false},"author":240,"featured_media":21241,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[16578],"tags":[],"class_list":{"0":"post-21239","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-python"},"acf":{"post_sub_title":"","sprint_id":"","query_class":"Python","school_sft":"","parent_sft":"","school_privacy_policy":"","has_review":null,"is_sponser_post":"","is_guest_post":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Python TypeError: unhashable type: \u2018dict\u2019 Solution | Career Karma<\/title>\n<meta name=\"description\" content=\"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python TypeError: unhashable type: \u2018dict\u2019 Solution\" \/>\n<meta property=\"og:description\" content=\"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\" \/>\n<meta property=\"og:site_name\" content=\"Career Karma\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/facebook.com\/careerkarmaapp\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-15T08:38:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-12-01T11:57:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1020\" \/>\n\t<meta property=\"og:image:height\" content=\"680\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"James Gallagher\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@career_karma\" \/>\n<meta name=\"twitter:site\" content=\"@career_karma\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"James Gallagher\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\"},\"author\":{\"name\":\"James Gallagher\",\"@id\":\"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94\"},\"headline\":\"Python TypeError: unhashable type: \u2018dict\u2019 Solution\",\"datePublished\":\"2020-08-15T08:38:23+00:00\",\"dateModified\":\"2023-12-01T11:57:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\"},\"wordCount\":602,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg\",\"articleSection\":[\"Python\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\",\"url\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\",\"name\":\"Python TypeError: unhashable type: \u2018dict\u2019 Solution | Career Karma\",\"isPartOf\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg\",\"datePublished\":\"2020-08-15T08:38:23+00:00\",\"dateModified\":\"2023-12-01T11:57:54+00:00\",\"author\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94\"},\"description\":\"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.\",\"breadcrumb\":{\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage\",\"url\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg\",\"contentUrl\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg\",\"width\":1020,\"height\":680},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\/\/careerkarma.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python\",\"item\":\"https:\/\/careerkarma.com\/blog\/python\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Python TypeError: unhashable type: \u2018dict\u2019 Solution\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/careerkarma.com\/blog\/#website\",\"url\":\"https:\/\/careerkarma.com\/blog\/\",\"name\":\"Career Karma\",\"description\":\"Latest Coding Bootcamp News &amp; Career Hacks from Industry Insiders\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/careerkarma.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94\",\"name\":\"James Gallagher\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/01\/james-gallagher-150x150.jpg\",\"contentUrl\":\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/01\/james-gallagher-150x150.jpg\",\"caption\":\"James Gallagher\"},\"description\":\"James Gallagher is a self-taught programmer and the technical content manager at Career Karma. He has experience in range of programming languages and extensive expertise in Python, HTML, CSS, and JavaScript. James has written hundreds of programming tutorials, and he frequently contributes to publications like Codecademy, Treehouse, Repl.it, Afrotech, and others.\",\"url\":\"https:\/\/careerkarma.com\/blog\/author\/jamesgallagher\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Python TypeError: unhashable type: \u2018dict\u2019 Solution | Career Karma","description":"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.","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:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/","og_locale":"en_US","og_type":"article","og_title":"Python TypeError: unhashable type: \u2018dict\u2019 Solution","og_description":"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.","og_url":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/","og_site_name":"Career Karma","article_publisher":"http:\/\/facebook.com\/careerkarmaapp","article_published_time":"2020-08-15T08:38:23+00:00","article_modified_time":"2023-12-01T11:57:54+00:00","og_image":[{"width":1020,"height":680,"url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg","type":"image\/jpeg"}],"author":"James Gallagher","twitter_card":"summary_large_image","twitter_creator":"@career_karma","twitter_site":"@career_karma","twitter_misc":{"Written by":"James Gallagher","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#article","isPartOf":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/"},"author":{"name":"James Gallagher","@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94"},"headline":"Python TypeError: unhashable type: \u2018dict\u2019 Solution","datePublished":"2020-08-15T08:38:23+00:00","dateModified":"2023-12-01T11:57:54+00:00","mainEntityOfPage":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/"},"wordCount":602,"commentCount":0,"image":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage"},"thumbnailUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg","articleSection":["Python"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/","url":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/","name":"Python TypeError: unhashable type: \u2018dict\u2019 Solution | Career Karma","isPartOf":{"@id":"https:\/\/careerkarma.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage"},"image":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage"},"thumbnailUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg","datePublished":"2020-08-15T08:38:23+00:00","dateModified":"2023-12-01T11:57:54+00:00","author":{"@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94"},"description":"On Career Karma, learn about the Python TypeError: unhashable type: \u2018dict\u2019, how the error works, and how to solve the error.","breadcrumb":{"@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#primaryimage","url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg","contentUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/08\/amy-hirschi-dVMWZDpCUlo-unsplash.jpg","width":1020,"height":680},{"@type":"BreadcrumbList","@id":"https:\/\/careerkarma.com\/blog\/python-typeerror-unhashable-type-dict\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/careerkarma.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python","item":"https:\/\/careerkarma.com\/blog\/python\/"},{"@type":"ListItem","position":3,"name":"Python TypeError: unhashable type: \u2018dict\u2019 Solution"}]},{"@type":"WebSite","@id":"https:\/\/careerkarma.com\/blog\/#website","url":"https:\/\/careerkarma.com\/blog\/","name":"Career Karma","description":"Latest Coding Bootcamp News &amp; Career Hacks from Industry Insiders","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/careerkarma.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/e79364792443fbff794a144c67ec8e94","name":"James Gallagher","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/01\/james-gallagher-150x150.jpg","contentUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2020\/01\/james-gallagher-150x150.jpg","caption":"James Gallagher"},"description":"James Gallagher is a self-taught programmer and the technical content manager at Career Karma. He has experience in range of programming languages and extensive expertise in Python, HTML, CSS, and JavaScript. James has written hundreds of programming tutorials, and he frequently contributes to publications like Codecademy, Treehouse, Repl.it, Afrotech, and others.","url":"https:\/\/careerkarma.com\/blog\/author\/jamesgallagher\/"}]}},"_links":{"self":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts\/21239","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/users\/240"}],"replies":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/comments?post=21239"}],"version-history":[{"count":0,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts\/21239\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/media\/21241"}],"wp:attachment":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/media?parent=21239"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/categories?post=21239"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/tags?post=21239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}