{"id":3202,"date":"2026-10-04T11:19:10","date_gmt":"2026-10-04T11:19:10","guid":{"rendered":"https:\/\/dmarketertayeeb.com\/blog\/github-actions-checks-workflow-retention\/"},"modified":"2026-10-04T11:33:22","modified_gmt":"2026-10-04T11:33:22","slug":"github-actions-checks-workflow-retention","status":"publish","type":"post","link":"https:\/\/dmarketertayeeb.com\/blog\/github-actions-checks-workflow-retention\/","title":{"rendered":"GitHub Actions Retention: Checks, Runs, and Statuses"},"content":{"rendered":"\n<p>Since October 1, 2026, the GitHub Actions retention setting on <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">github.com<\/code> also governs check data, workflow runs, and commit statuses, alongside artifacts and logs. GitHub says these records are cleaned up when they pass the period set at the enterprise, organization, or repository level. Checks and statuses from third-party apps are included, and changing the setting will not restore records already removed. <a href=\"https:\/\/github.blog\/changelog\/2026-10-01-actions-retention-now-covers-checks-runs-and-statuses\/\">GitHub&#8217;s October 1 notice confirms the change is live<\/a>; the <a href=\"https:\/\/github.blog\/changelog\/2026-08-27-actions-retention-will-cover-checks-workflow-runs-and-statuses\/\">August announcement, clarified September 15<\/a>, explains what changed.<\/p>\n\n\n\n<p>If a release review, incident investigation, or audit needs evidence beyond the GitHub window, check what is still available and export the pieces you need before they disappear. Raising a retention number is not the same as making an archive.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Check the value and the limit above your repository<\/h2>\n\n\n\n<p>At repository level, open <strong>Settings \u2192 Actions \u2192 General \u2192 Check, workflow run, status, artifact and log retention<\/strong>. An organization or enterprise can set a maximum that the repository cannot exceed. GitHub&#8217;s documentation lists a 90-day default, a 1-to-90-day range for public repositories, and a 1-to-400-day range for private repositories, subject to the managing organization&#8217;s or enterprise&#8217;s cap. The value you can actually use may be lower than the private-repository maximum.<\/p>\n\n\n\n<p>You can read the configured value through <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/actions\/permissions\/artifact-and-log-retention<\/code>. Its response has <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">days<\/code> and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">maximum_allowed_days<\/code>. GitHub&#8217;s example response uses 90 and 365; those are example values, and 365 is not the universal private-repository maximum. The REST route keeps the older \u201cartifact and log\u201d wording, though the same setting now covers checks, workflow runs, and statuses. This specific settings endpoint requires authentication: a fine-grained token needs repository <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Administration: read<\/code>, while a classic personal access token or OAuth token needs the <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">repo<\/code> scope. For run and artifact inventory, use <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Actions: read<\/code>; for check data and annotations, <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Checks: read<\/code>; and for commit statuses, <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Commit statuses: read<\/code>. Some public-data endpoints allow unauthenticated reads where their documentation says so; that exception does not apply to this settings endpoint. See the <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/permissions?apiVersion=2026-03-10#get-artifact-and-log-retention-settings-for-a-repository\">repository retention settings endpoint<\/a> and GitHub&#8217;s <a href=\"https:\/\/docs.github.com\/en\/repositories\/managing-your-repositorys-settings-and-features\/enabling-features-for-your-repository\/managing-github-actions-settings-for-a-repository\">repository settings guide<\/a>.<\/p>\n\n\n\n<p>There is a date wrinkle in the documentation. The settings page still contains an \u201cStarting October 1\u201d warning, even though that date has passed; GitHub&#8217;s October 1 changelog confirms the rollout is now effective on <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">github.com<\/code>. The same settings page says a custom retention value applies only to new objects, not existing ones. Do not assume that raising the value today will extend older records. Export any older evidence you still need, and treat a changed setting as protection for new objects. GitHub also says a setting change cannot restore data already deleted.<\/p>\n\n\n\n<p>The October 1 changelog names <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">github.com<\/code>. If you use GitHub Enterprise Server or another deployment, check the documentation for that product and version rather than assuming the same rollout date.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Map the record types before exporting<\/h2>\n\n\n\n<p>A workflow run page is only one part of CI history. A useful archive keeps the record that links a result to a commit, plus any logs, annotations, or artifact bytes the investigation needs.<\/p>\n\n\n<div style=\"overflow-x:auto;-webkit-overflow-scrolling:touch;\">\n\n\n<figure class=\"wp-block-table\" role=\"region\" aria-label=\"GitHub Actions retention and export coverage\" tabindex=\"0\" style=\"overflow-x:auto;max-width:100%;scroll-behavior:auto;\"><table style=\"min-width:680px;\">\n<thead>\n<tr><th scope=\"col\">Record<\/th><th scope=\"col\">Read-only API route<\/th><th scope=\"col\">What to preserve and where coverage stops<\/th><\/tr>\n<\/thead>\n<tbody>\n<tr><td>Workflow runs and attempts<\/td><td><code style=\"overflow-wrap:anywhere;overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/actions\/runs?per_page=100&amp;created=START..END<\/code><\/td><td>Save each run ID, current <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">run_attempt<\/code>, workflow path or ID, event, commit SHA, timestamps, conclusion, actor, and URL. The run list describes the latest attempt; it is not an archive of every rerun log. For each earlier attempt you need and have identified, download its ZIP from <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/actions\/runs\/{run_id}\/attempts\/{attempt_number}\/logs<\/code>. The <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/workflow-runs?apiVersion=2026-03-10#download-workflow-run-attempt-logs\">attempt-log endpoint<\/a> returns a temporary download redirect.<\/td><\/tr>\n<tr><td>Check suites and check runs<\/td><td><code style=\"overflow-wrap:anywhere;overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/commits\/{ref}\/check-suites?per_page=100<\/code>, then <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">\/check-suites\/{check_suite_id}\/check-runs?filter=all&amp;per_page=100<\/code>; when annotations matter, <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">\/check-runs\/{check_run_id}\/annotations?per_page=100<\/code><\/td><td>Keep suite and run IDs, app, status, conclusion, output, and annotations when they matter. The check-run list for a ref defaults to <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">filter=latest<\/code>; use <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">filter=all<\/code> for older versions. The separate <a href=\"https:\/\/docs.github.com\/en\/rest\/checks\/runs?apiVersion=2026-03-10#list-check-run-annotations\">annotations endpoint<\/a> is paginated and uses <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Checks: read<\/code>.<\/td><\/tr>\n<tr><td>Commit statuses<\/td><td><code style=\"overflow-wrap:anywhere;overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/commits\/{ref}\/statuses?per_page=100<\/code><\/td><td>Save each status state, context, description, creator, timestamps, and target URL. A target URL may point to logs held by another CI provider, which needs its own export.<\/td><\/tr>\n<tr><td>Artifacts<\/td><td><code style=\"overflow-wrap:anywhere;overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/actions\/runs\/{run_id}\/artifacts?per_page=100<\/code>, then <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">\/actions\/artifacts\/{artifact_id}\/zip<\/code><\/td><td>Save the ZIP bytes and the artifact ID, name, size, digest, creation time, and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">expires_at<\/code>. Do not keep only the download URL.<\/td><\/tr>\n<tr><td>Workflow logs<\/td><td><code style=\"overflow-wrap:anywhere;overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">GET \/repos\/{owner}\/{repo}\/actions\/runs\/{run_id}\/logs<\/code> or <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">\/attempts\/{attempt_number}\/logs<\/code><\/td><td>Download the log archive itself. The API responds with a redirect URL that expires after one minute, so follow it immediately.<\/td><\/tr>\n<tr><td>Actions caches<\/td><td>Separate cache settings and cache APIs<\/td><td>Caches do not use the new five-item retention setting. Their default inactivity window and storage eviction rules are separate; a dependency cache is not a durable test-evidence archive.<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n<\/div>\n\n\n<p>The main run, check, status, artifact, and log endpoints are documented in GitHub&#8217;s <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/workflow-runs\">workflow-runs API<\/a>, <a href=\"https:\/\/docs.github.com\/en\/rest\/checks\/suites\">check-suites API<\/a>, <a href=\"https:\/\/docs.github.com\/en\/rest\/checks\/runs\">check-runs API<\/a>, <a href=\"https:\/\/docs.github.com\/en\/rest\/commits\/statuses\">commit-statuses API<\/a>, and <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/artifacts\">artifacts API<\/a>. These endpoints return different objects; there is no single run-list response that includes every check, external status, log file, and artifact byte.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Use a read-only export plan that can show its gaps<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Read the setting and save a bounded run inventory<\/h3>\n\n\n\n<p>This Bash example uses GitHub CLI for two documented read-only requests. Before using it, confirm <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">gh<\/code> is authenticated to an account authorized for the intended repository, for example with <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">gh auth status<\/code>. Use a fine-grained token with <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Administration: read<\/code> for the retention setting and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Actions: read<\/code> for workflow runs. If you use a classic token, the repository settings endpoint requires <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">repo<\/code>. Replace the owner, repository, start, and end placeholders. Use ISO 8601 UTC timestamps for the bounded <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">created<\/code> range. The commands were not run against a repository.<\/p>\n\n\n\n<pre class=\"wp-block-code\" tabindex=\"0\" aria-label=\"Read-only GitHub CLI example\" style=\"max-width:100%;overflow-x:auto;white-space:pre;scroll-behavior:auto;line-height:1.65;\"><code style=\"font-size:15px;line-height:1.65;white-space:pre!important;word-break:normal!important;overflow-wrap:normal!important;\">set -eu\numask 077\nOWNER='OWNER'\nREPO='REPO'\nSTART='YYYY-MM-DDTHH:MM:SSZ'\nEND='YYYY-MM-DDTHH:MM:SSZ'\nOUT=\"ci-history-export-$(date -u +%Y%m%dT%H%M%SZ)\"\nmkdir -m 700 \"$OUT\"\ncd \"$OUT\"\n\ngh api --method GET \\\n  -H \"Accept: application\/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2026-03-10\" \\\n  \"\/repos\/$OWNER\/$REPO\/actions\/permissions\/artifact-and-log-retention\" \\\n  &gt; retention.json\n\ngh api --method GET \\\n  -H \"Accept: application\/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2026-03-10\" \\\n  \"\/repos\/$OWNER\/$REPO\/actions\/runs?per_page=100&amp;created=$START..$END\" \\\n  --paginate --slurp \\\n  &gt; workflow-run-pages.json<\/code><\/pre>\n\n\n\n<p>The settings response contains <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">days<\/code> and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">maximum_allowed_days<\/code>; the numbers shown in GitHub&#8217;s schema example are not values from your repository. The run output is an outer JSON array of page objects, each with its own <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">workflow_runs<\/code> results. <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">--paginate<\/code> follows the REST pagination links, and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">--slurp<\/code> keeps the page objects together in that array. This gives you run metadata only. It does not fetch earlier-attempt logs, artifact ZIPs, check annotations or commit statuses; use the relevant rows above for those records. The <a href=\"https:\/\/cli.github.com\/manual\/gh_api\">GitHub CLI manual<\/a> documents the method, pagination, and slurp options.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Write down what the evidence is for.<\/strong> Name the consumers, the longest time they need access, and the record types they will need. For a release review that may mean the run attempt, commit SHA, check result, test report artifact, and logs. For a longer audit window, ask the owner of that requirement to set the retention rule. GitHub&#8217;s maximum is a platform limit, not proof that the period meets a legal or internal policy.<\/li>\n<li><strong>Record the effective setting and its cap.<\/strong> Read the repository, organization, and enterprise policy that governs the repository. Keep the date, value, and maximum allowed value with the export manifest. Avoid the matching <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">PUT<\/code> settings route unless you are explicitly changing policy.<\/li>\n<li><strong>Enumerate runs in date ranges.<\/strong> Set <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">per_page=100<\/code>; the CLI example above follows pagination automatically, while a direct REST client must follow the response&#8217;s <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Link<\/code> header. GitHub caps a filtered workflow-run search at 1,000 results. Check the returned <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">total_count<\/code>, number of page objects, and date-window boundaries; reaching ten pages by itself proves neither that the window was complete nor that more results were hidden. Subdivide any window that reaches or approaches the cap and record the resulting ranges and page counts. See GitHub&#8217;s <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/workflow-runs?apiVersion=2026-03-10#list-workflow-runs-for-a-repository\">workflow-run listing reference<\/a>.<\/li>\n<li><strong>Walk checks by commit.<\/strong> For each relevant commit SHA, list its check suites, then list every suite&#8217;s check runs with <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">filter=all<\/code>. The shortcut endpoint for check runs on a ref uses the latest filter by default and can stop at the 1,000 most recent suites on one ref. GitHub recommends listing suites and then the runs for each suite when broader coverage is needed. The checks API is scoped to pushes in the repository where the suite or run was created, so account for forked repositories separately.<\/li>\n<li><strong>Read statuses and artifacts separately.<\/strong> Statuses are returned newest first for the requested ref. Page through them, then download each unexpired artifact ZIP you need. The artifact object exposes an expiry time and digest, but its listing is not the artifact&#8217;s content.<\/li>\n<li><strong>Fetch expiring downloads immediately.<\/strong> Both workflow-log and artifact downloads use temporary redirects that expire after one minute. Automate the redirect and file download in one operation, then verify the saved bytes. Do not store the temporary URL as if it were a permanent archive link.<\/li>\n<li><strong>Bind the files to a manifest.<\/strong> Record repository URL and ID, relevant commit SHAs (including commits with third-party checks even when there is no Actions run for them), workflow path, run ID and each required attempt, check suite and run IDs, annotation pages, status context, artifact IDs and digests, request date, API route, pagination ranges, and a SHA-256 hash for every downloaded file. Store the manifest, JSON responses, log ZIPs, and artifact ZIPs in a location with the access controls and retention your organization requires. Test retrieval and compare hashes before relying on the archive.<\/li>\n<\/ol>\n\n\n\n<p><strong>When a read fails:<\/strong> Pause and inspect the endpoint&#8217;s documented permission, access policy, and any rate-limit details before changing credentials. A <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">403<\/code> or rate-limit response calls for diagnosis, not a broader token by default. For a <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">404<\/code>, verify the repository path, record ID, access, and object state; do not assume it proves deletion or that data can be restored. The artifact-download endpoint documents <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">410 Gone<\/code>; if returned, treat that download as unavailable through this API. Check artifact metadata such as <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">expired<\/code> when available, and do not promise a restore. GitHub documents these responses in the <a href=\"https:\/\/docs.github.com\/en\/rest\/actions\/artifacts?apiVersion=2026-03-10#download-an-artifact\">artifact-download reference<\/a> and its <a href=\"https:\/\/docs.github.com\/en\/rest\/using-the-rest-api\/rate-limits-for-the-rest-api\">REST rate-limit guidance<\/a>.<\/p>\n\n\n\n<p>Use the least privilege needed for the read: fine-grained tokens use <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Actions: read<\/code> for runs, logs, and artifacts; <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Checks: read<\/code> for check suites and runs; and <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">Commit statuses: read<\/code> for statuses. Classic tokens for private repositories may require the broader <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">repo<\/code> scope. Check the endpoint&#8217;s permission table before creating a token.<\/p>\n\n\n\n<p>A normal source-code mirror is not a complete Actions export. Workflow, check, status, log, and artifact records use separate API routes, so preserve the responses and file contents required for the investigation, release review, or audit. Logs and artifacts can also contain sensitive material; restrict the archive to the people who need it and follow the repository&#8217;s data-handling rules.<\/p>\n\n\n\n<p>One open-source example, <a href=\"https:\/\/github.com\/Booyaka101\/actions-attic\">actions-attic<\/a>, writes workflow-run, check-run, and commit-status metadata as JSONL in a separate Git ref. Its README explicitly says that it does not store job-log text or artifacts, and its workflow example requests <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">contents: write<\/code> to maintain that ref. That is a useful metadata-archive pattern to inspect, not a complete export or an endorsement. Review its code, permissions, backfill coverage, and the security of the destination before adopting any third-party archiver.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Keep cache and storage costs separate<\/h2>\n\n\n\n<p>Artifact and log retention is not cache retention. <a href=\"https:\/\/docs.github.com\/en\/actions\/reference\/workflows-and-actions\/dependency-caching\">GitHub&#8217;s dependency-cache reference<\/a> says entries that have not been accessed for more than seven days are removed by default, with separate size and eviction limits. Use caches to speed up builds, not to keep test evidence. For an individual artifact, the <a href=\"https:\/\/docs.github.com\/en\/actions\/tutorials\/store-and-share-data\"><code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">actions\/upload-artifact<\/code> documentation<\/a> says you can set <code style=\"overflow-wrap:anywhere;word-break:break-word;white-space:normal;\">retention-days<\/code>, up to the repository, organization, or enterprise limit. That changes the artifact&#8217;s expiry, not check history or workflow logs.<\/p>\n\n\n\n<p>There is also a storage-cost wording difference across GitHub&#8217;s public pages. The August 27 retention announcement says artifacts and logs count toward billable Actions storage, while the current <a href=\"https:\/\/docs.github.com\/en\/billing\/concepts\/product-billing\/github-actions\">GitHub Actions billing guide<\/a> says log files and long job summaries do not count toward the repository owner&#8217;s artifact-storage allowance. The detailed billing page separates artifact and package storage from cache storage; it does not provide an account-specific estimate for your repository. Check your current plan and usage before treating a retention change as a cost-saving measure. This guide does not estimate savings.<\/p>\n\n\n\n<p><em>Disclosure: This guide was prepared with AI assistance. The read-only API process above was checked against GitHub&#8217;s documentation but was not executed against a live repository.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>GitHub Actions retention now covers checks, workflow runs and statuses. Check your limits, see what is deleted, and export CI evidence safely.<\/p>\n","protected":false},"author":1,"featured_media":3201,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[274],"tags":[397,315],"class_list":["post-3202","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tools-reviews","tag-developer-experience","tag-developer-tools","has-featured-image"],"_links":{"self":[{"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/posts\/3202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/comments?post=3202"}],"version-history":[{"count":1,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/posts\/3202\/revisions"}],"predecessor-version":[{"id":3203,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/posts\/3202\/revisions\/3203"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/media\/3201"}],"wp:attachment":[{"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/media?parent=3202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/categories?post=3202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dmarketertayeeb.com\/blog\/wp-json\/wp\/v2\/tags?post=3202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}