{"id":1117,"date":"2026-05-15T10:50:34","date_gmt":"2026-05-15T08:50:34","guid":{"rendered":"https:\/\/fresh-dev.nl\/?post_type=blog&#038;p=1117"},"modified":"2026-08-22T14:12:30","modified_gmt":"2026-08-22T12:12:30","slug":"simplicate-tracker","status":"publish","type":"blog","link":"https:\/\/fresh-dev.nl\/en\/blog\/simplicate-tracker\/","title":{"rendered":"Building our own Simplicate tracker"},"content":{"rendered":"<div class=\"section section-blocks\">\n    <div class=\"container\" data-reveal-group>\n        <div class=\"acf-innerblocks-container\">        <div class=\"block is-content\" id=\"wat-we-bouwden-een-eigen-simplicate-tracker\">\n                            <h2>Wat we bouwden: een eigen Simplicate tracker<\/h2>\n                                        <p>Bij Fresh-Dev bouwen we af en toe onze eigen interne tools. De nieuwste: een <strong>Simplicate tracker<\/strong> als Mac-app, gekoppeld aan onze urenregistratie via de Simplicate API. Geen revolutie, wel een paar honderd klikken minder per week voor het hele team.<\/p><p>In dit artikel:<\/p><ul><li><a href=\"#aanleiding\">De aanleiding voor onze Simplicate tracker<\/a><\/li><li><a href=\"#toggl\">Wat we van Toggl misten<\/a><\/li><li><a href=\"#bouw\">Hoe we &#8216;m in elkaar zetten<\/a><\/li><li><a href=\"#na-v1\">Wat na v1 kwam<\/a><\/li><li><a href=\"#lessen\">5 lessen uit dit project<\/a><\/li><li><a href=\"#nu\">Wat de Simplicate tracker nu doet<\/a><\/li><\/ul>                                <\/div>\n                <div class=\"block is-content\" id=\"aanleiding\">\n                            <h2>De aanleiding voor onze Simplicate tracker<\/h2>\n                                        <p>Bijna alles wat we intern doen, loopt via <a href=\"https:\/\/www.simplicate.nl\/\" rel=\"noopener\" target=\"_blank\">Simplicate<\/a>: projectstatus, capaciteitsplanning, facturatie, uren. Werkt prima zolang je &#8217;s ochtends je dag inplant en die planning ook precies volgt.<\/p><p>Zo gaat een werkdag zelden. Komt er een vraag tussendoor of een snelle taak voor een andere klant? Dan moest je inloggen op Simplicate, het juiste project opzoeken en je uren handmatig bijwerken. Vier handelingen voor een tien-minutenklus, en het kwam meerdere keren per dag terug.<\/p><p>Daarom kwam de wens voor een Simplicate tracker die altijd binnen handbereik staat. E\u00e9n klik, juiste project, timer loopt.<\/p>                                <\/div>\n                <div class=\"block is-content\" id=\"toggl\">\n                            <h2>Wat we van Toggl misten<\/h2>\n                                        <p>Een paar jaar geleden gebruikten we Toggl voor onze tijdregistratie. Daar zat een Mac-app bij die het anders aanpakte: \u00e9\u00e9n scherm met een timer, je dagoverzicht, je openstaande taken, en favorieten zoals &#8216;Administratie&#8217; die je met \u00e9\u00e9n klik aanzet.<\/p><p>Kleine dingen, samen tientallen klikken minder per dag. Dat hadden we sinds de overstap naar Simplicate niet meer. Een Simplicate tracker met dezelfde directheid bestond niet, dus die zijn we zelf gaan maken.<\/p>                                <\/div>\n                <div class=\"block is-image\">\n            <div class=\"image-holder\" data-click-zoom>\n                <img decoding=\"async\"\n                    src=\"https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/uren.png\"\n                                            srcset=\"https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/uren.png 438w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/uren-227x300.png 227w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/uren-9x12.png 9w\"\n                        sizes=\"(max-width: 767px) 100vw, 720px\"\n                                        alt=\"Blog afbeelding\"\n                >\n                <button type=\"button\" class=\"image-zoom\" aria-label=\"Afbeelding vergroten\"><\/button>\n            <\/div>\n        <\/div>\n                <div class=\"block is-quote\">\n            <p>Bouw een app precies als Toggl, maar dan helemaal voor ons werk.<\/p>\n                            <span>&#8211; Jesse, mede-eigenaar van Fresh-Dev<\/span>\n                    <\/div>\n                <div class=\"block is-content\" id=\"bouw\">\n                            <h2>Hoe we onze Simplicate tracker in elkaar zetten<\/h2>\n                                        <p>Jesse, een van de eigenaren, bouwt al jaren eigen iOS-appjes in Swift. In het team noemen we &#8216;m de <a href=\"https:\/\/www.google.com\/search?q=golden+master\" rel=\"noopener\" target=\"_blank\">goldenmaster<\/a> (hij draait elke Apple-b\u00e8ta als eerste). Hij is met <a href=\"https:\/\/www.anthropic.com\/claude-code\" rel=\"noopener\" target=\"_blank\">Claude Code<\/a> aan de slag gegaan om een eerste versie neer te zetten.<\/p><p>De eerste vraag was praktisch: hoe halen we de Simplicate-data op? De <a href=\"https:\/\/developers.simplicate.com\/\" rel=\"noopener\" target=\"_blank\">Simplicate API<\/a> bleek alles te bieden wat we nodig hadden, inclusief authenticatie. Geen tussenserver, geen sync-script, gewoon direct van app naar Simplicate.<\/p><p>In Xcode bouwden we een dashboardweergave die projecten, taken en gewerkte uren toont. Voor het ontwerp maakten we via ChatGPT een briefing op basis van twee referenties: onze eigen <a href=\"https:\/\/fresh-dev.nl\/\" rel=\"noopener\">Fresh-Dev website<\/a> en Toggl voor Mac. Die briefing was het uitgangspunt voor versie 1 van onze Simplicate tracker.<\/p>                                <\/div>\n                <div class=\"block is-content\" id=\"na-v1\">\n                            <h2>Wat na v1 kwam<\/h2>\n                                        <p>Een AI-gestuurd prototype heb je in een week. De rest kost maanden. Werkt het ook met twintig actieve taken? Wat doet de app als &#8216;ie in de achtergrond staat met een lopende timer? Hoeveel CPU vraagt &#8216;ie op een MacBook Air?<\/p><p>Op dat soort vragen hebben we doorgewerkt voordat we &#8216;m intern uitrolden. De Simplicate tracker moest niet alleen werken op de demo-laptop, maar de hele werkdag van het team meedraaien zonder ruis.<\/p>                                <\/div>\n                <div class=\"block is-image\">\n            <div class=\"image-holder\" data-click-zoom>\n                <img decoding=\"async\"\n                    src=\"https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-1024x610.png\"\n                                            srcset=\"https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-1024x610.png 1024w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-300x179.png 300w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-768x457.png 768w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-1536x915.png 1536w, https:\/\/fresh-dev.nl\/app\/uploads\/2026\/05\/xcode-simplicate-2048x1220.png 2048w\"\n                        sizes=\"(max-width: 767px) 100vw, 720px\"\n                                        alt=\"Simplicate tracker Mac-app in gebruik\"\n                >\n                <button type=\"button\" class=\"image-zoom\" aria-label=\"Afbeelding vergroten\"><\/button>\n            <\/div>\n        <\/div>\n                <div class=\"block is-content\" id=\"lessen\">\n                            <h2>5 lessen uit dit project<\/h2>\n                                        <p>Onderweg leerden we een paar dingen die ook voor andere interne tools handig zijn:<\/p><ul><li><strong>Begin bij de echte irritatie.<\/strong> Niet bij wat technisch leuk is, maar bij de stap die je het vaakst flucht.<\/li><li><strong>Gebruik de bestaande API als die er is.<\/strong> De Simplicate API maakte een tussenlaag overbodig.<\/li><li><strong>Een AI-prototype is je eerste 20%.<\/strong> De resterende 80% is rand-cases, performance en gedrag in de achtergrond.<\/li><li><strong>Test op \u00e9chte werkdagen.<\/strong> Pas dan zie je dingen als &#8216;wat als ik de app sluit met een lopende timer?&#8217;.<\/li><li><strong>Maak het optioneel voor het team.<\/strong> Een interne tool die je verplicht stelt, voelt als overhead. Een tool die je werk makkelijker maakt, gebruikt iedereen vanzelf.<\/li><\/ul>                                <\/div>\n                <div class=\"block is-content\" id=\"nu\">\n                            <h2>Wat onze Simplicate tracker nu doet<\/h2>\n                                        <p>De huidige versie heeft de basis van Toggl plus een aantal dingen die op onze workflow zijn afgestemd:<\/p><ul><li>Loopt een taak over meerdere dagen, dan toont de app hoeveel uur je vandaag nog moet maken om op koers te blijven.<\/li><li>Een kleine kalenderweergave ernaast met je ingeplande blokken.<\/li><li>Notificatie als er geen timer loopt terwijl je wel ingepland staat, of juist als er al een paar uur onafgebroken \u00e9\u00e9n loopt.<\/li><li>Waarschuwing een paar minuten voordat een ingeplande taak begint.<\/li><li>Bovenaan: hoeveel uur je vandaag zou moeten klokken, en hoeveel je tot nu toe geklokt hebt.<\/li><\/ul><p>Voor het team is de app niet verplicht. Wie zonder wil werken, kan dat. Wie de extra Simplicate-stap als wrijving voelde, gebruikt &#8216;m dagelijks.<\/p>                                <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n<div class=\"section section-form\">        <div class=\"container\" data-reveal-group>\n            <div class=\"holder\" data-reveal-group-nested data-ignore=\"false\">\n                        <div class=\"content-holder\">\n            <div class=\"inner\">\n                <h3>Ook iets dat er nog niet is?<\/h3>\n<p>Laat je gegevens achter, dan bespreken we of jouw idee met een koppeling op te lossen is en wat daarvoor nodig zou zijn.<\/p>\n                            <\/div>\n                    <\/div>\n                                <div class=\"form-holder\" data-reveal-group>\n            <div class=\"inner\">\n                                <script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_2' ><div id='gf_2' class='gform_anchor' tabindex='-1'><\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_2' id='gform_2'  action='\/en\/wp-json\/wp\/v2\/blog\/1117#gf_2' data-formid='2' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_2' class='gform_fields top_label form_sublabel_below description_below validation_below'><div id=\"field_2_5\" class=\"gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_2_5'>Facebook<\/label><div class='ginput_container'><input name='input_5' id='input_2_5' type='text' value='' autocomplete='new-password'\/><\/div><div class='gfield_description' id='gfield_description_2_5'>This field is for validation purposes and should be left unchanged.<\/div><\/div><div id=\"field_2_1\" class=\"gfield gfield--type-text gfield--width-full input-extra gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_2_1'>Naam<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_2_1' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_2_3\" class=\"gfield gfield--type-email gfield--width-full input-extra gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_2_3'>E-mailadres<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_3' id='input_2_3' type='email' value='' class='large'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_2_4\" class=\"gfield gfield--type-phone gfield--width-full input-extra field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_2_4'>Telefoonnummer (optioneel)<\/label><div class='ginput_container ginput_container_phone'><input name='input_4' id='input_2_4' type='tel' value='' class='large'    aria-invalid=\"false\"   \/><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <input type='submit' id='gform_submit_button_2' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' value='Versturen'  \/> <input type='hidden' name='gform_ajax' value='form_id=2&amp;title=&amp;description=&amp;tabindex=0&amp;theme=gravity-theme&amp;hash=b691fb5641fdffe5a188501ad6f19bcc' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_2' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_2' id='gform_theme_2' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_2' id='gform_style_settings_2' value='' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_2' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='2' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='EUR' value='mYuwyh8vJLwP6uc1AYjOFwWX09WiUoUKgbb+JNOREJuqcZnOMnKOT8bbyjyrpYjCKUjw1f6SfNEnkh1pFwH5u9gXU9PIHvOZCQLf6UqCyasKZi0=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_2' value='WyJbXSIsIjFmODY2YWJjOTNmYzNkYTQwZmI3MTdlMDBjYjU4M2FjIl0=' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_2' id='gform_target_page_number_2' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_2' id='gform_source_page_number_2' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_2' id='gform_ajax_frame_2' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {gformInitSpinner( 2, 'https:\/\/fresh-dev.nl\/app\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery('#gform_ajax_frame_2').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_2');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_2').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_2').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_2').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_2').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_2').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_2').val();gformInitSpinner( 2, 'https:\/\/fresh-dev.nl\/app\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [2, current_page]);window['gf_submitting_2'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_2').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_2').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [2]);window['gf_submitting_2'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_2').text());}else{jQuery('#gform_2').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"2\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_2\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_2\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_2\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 2, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n            <\/div>\n        <\/div>\n                    <\/div>\n        <\/div>\n        <\/div><div class=\"section section-blocks\">\n    <div class=\"container\" data-reveal-group>\n        <div class=\"acf-innerblocks-container\">        <div class=\"block is-content\" id=\"slimmer-werken-met-je-eigen-tools\">\n                            <h2>Slimmer werken met je eigen tools?<\/h2>\n                                        <p>Loop jij ook tegen een proces aan dat slimmer kan? Vaak zit er een tool tussen die niemand bouwt omdat &#8217;t &#8217;te klein&#8217; lijkt. Bij <a href=\"https:\/\/fresh-dev.nl\/services\/\">onze services<\/a> zit het ontwerpen en bouwen van zulke interne hulpmiddelen ingebakken. Plan een <a href=\"https:\/\/fresh-dev.nl\/adviesgesprek-inplannen\/\">adviesgesprek<\/a> dan denken we mee.<\/p>                                <div class=\"button-holder\">\n            <a href=\"https:\/\/fresh-dev.nl\/contact\" class=\"button\">Neem contact op<\/a>\n        <\/div>\n                <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Simplifying the tracker as a Mac app: how we built it with Swift, Claude Code, and the Simplicate API. Five lessons from our own project.<\/p>","protected":false},"featured_media":1145,"template":"","meta":{"_acf_changed":false},"blog_category":[8],"class_list":["post-1117","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-tools-processen"],"acf":[],"_links":{"self":[{"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/blog\/1117","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/types\/blog"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/media\/1145"}],"wp:attachment":[{"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/media?parent=1117"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/fresh-dev.nl\/en\/wp-json\/wp\/v2\/blog_category?post=1117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}