{"id":85,"date":"2026-04-06T22:05:07","date_gmt":"2026-04-06T22:05:07","guid":{"rendered":"https:\/\/aicmo.uk\/learn\/building-an-ai-driven-seo-stack-apps-script-ai-cmo-for-effortless-automation\/"},"modified":"2026-10-13T04:51:24","modified_gmt":"2026-10-13T04:51:24","slug":"building-an-ai-driven-seo-stack-apps-script-ai-cmo-for-effortless-automation","status":"publish","type":"post","link":"https:\/\/aicmo.uk\/learn\/building-an-ai-driven-seo-stack-apps-script-ai-cmo-for-effortless-automation\/","title":{"rendered":"How to Build an AI-Driven SEO Stack with Google Apps Script"},"content":{"rendered":"\n<p>An AI-Driven SEO Stack built on Google Apps Script connects Google Search Console, Google Sheets, and large language model APIs into a single automated pipeline. This lightweight, serverless framework queries search performance metrics daily, highlights decaying pages, catches striking-distance queries ranking between positions 5 and 15, and drafts fresh metadata for human approval. By running these automated routines inside your existing Google Cloud environment, you eliminate the need for expensive point solutions while maintaining total data privacy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Build an In-House AI-Driven SEO Stack Today?<\/h2>\n\n\n\n<p>Most marketing teams spend hundreds of pounds every month on fragmented software subscriptions that refuse to talk to each other. You jump between one tool for keyword tracking, another for technical crawls, and a third for an AI writing assistant that produces bland copy. By combining Google Apps Script with machine learning APIs, you turn a simple spreadsheet into a custom mission control room. This flexible <strong>AI-Driven SEO Stack<\/strong> continuously extracts search performance figures, prioritises high-opportunity keywords, and prepares optimised title tags before your working day even starts. If you want to bypass custom development and automate your workflows from day one, explore <strong><a href=\"https:\/\/aicmo.uk\">AI CMO: Unified AI Marketing Automation for Digital Growth<\/a><\/strong> to power your organic campaigns seamlessly.<\/p>\n\n\n\n<p>Search behaviour has changed dramatically across the industry. Search engines update ranking criteria faster than ever, while generative answer engines and conversational bots deliver direct responses without traditional blue clicks. Managing monthly performance audits through static manual spreadsheets leaves your team reacting to yesterday&#8217;s problems. A scheduled script operating inside your Google Workspace identifies organic traffic drops, drafts internal links, and highlights technical issues automatically every single morning. You get an adaptable organic growth system that shifts alongside search algorithms without tying your business to costly agency retainers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Is an AI-Driven SEO Stack? (The Three Architectural Layers)<\/h2>\n\n\n\n<p>To construct an automated system that functions reliably, you must understand how each part fits together. Instead of setting up a messy web of disconnected tools, this custom architecture relies on three distinct layers that handle extraction, intelligence, and editorial control.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. The Ingestion Layer<\/h3>\n\n\n\n<p>Everything starts with dependable search performance metrics. Rather than forcing your team to download manual CSV exports from Google Search Console or Google Analytics 4, Google Apps Script queries your data directly through official REST endpoints. The ingestion script runs on a daily time-based trigger, pulling the last 28 days of organic search clicks, impressions, average positions, and click-through rates. It cleans the raw figures and stores them neatly in dedicated columns across your master Google Sheet.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. The Machine Intelligence Layer<\/h3>\n\n\n\n<p>Raw search numbers do not explain which editorial steps you should take next. This is where artificial intelligence takes over. The script inspects your performance figures, isolates striking-distance keywords (queries hovering between positions 5 and 15 with healthy impression volume), and passes that context to a language model endpoint using standard HTTPS calls. The prompt directs the model to evaluate the target URL, dissect user search intent, and craft compelling, click-worthy title tags and meta descriptions within standard character limits.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. The Human Governance Layer<\/h3>\n\n\n\n<p>Automation without human oversight creates major quality risks. The script writes AI-generated recommendations into staging columns directly beside your current production metadata. This gives your content editors a clean dashboard where they can review suggested wording, refine brand voice, and select an approval status from a dropdown menu. Once approved, an auxiliary script can push the verified metadata straight to your content management system through webhooks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Use Google Apps Script Over Zapier or Make?<\/h2>\n\n\n\n<p>Third-party automation services like Zapier or Make work reasonably well for basic two-step alerts. But running an entire search engine optimisation workflow through them quickly becomes clumsy, fragile, and unnecessarily expensive.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Zero Task Credit Caps:<\/strong> Third-party automation platforms charge fees based on total task executions. If you monitor 3,000 URLs and refresh 400 titles every week, your monthly bill escalates rapidly. Google Apps Script runs within generous Workspace quotas that cost nothing extra.<\/li>\n\n\n<li><strong>Native Google Security:<\/strong> You do not need to manage expiring third-party access tokens, messy OAuth screens, or fragile third-party connectors. Google Apps Script operates under your primary Google identity, making secure connections to Search Console, Google Drive, and BigQuery straightforward.<\/li>\n\n\n<li><strong>No Server Maintenance:<\/strong> You do not have to provision a virtual private server, patch Linux distributions, or manage Docker containers. Google hosts and runs your code across its distributed cloud infrastructure quietly in the background.<\/li>\n\n\n<li><strong>Familiar Interface for Teams:<\/strong> Marketing teams already understand how to navigate Google Sheets. Using a collaborative spreadsheet as your primary interface removes the steep learning curve usually required by complex enterprise SEO platforms.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">How to Build Your In-House SEO Automation Engine Step-by-Step<\/h2>\n\n\n\n<p>Setting up your custom search engine takes systematic planning, but following these steps will get your architecture operational in no time.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Establish Your Google Cloud Project<\/h3>\n\n\n\n<p>To allow your script to pull Search Console metrics, connect it to a dedicated Google Cloud project:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>Visit the Google Cloud Console and create a project named SEO Automation Engine.<\/li>\n\n\n<li>Navigate to the APIs and Services menu, open the library, and enable both the Google Search Console API and the Google Sheets API.<\/li>\n\n\n<li>Configure your OAuth consent screen for internal user status so your corporate account can authorise your script without public verification delays.<\/li>\n\n\n<li>Confirm that your primary Google Workspace account holds verified owner or delegated permissions on the target Search Console property.<\/li>\n\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Structure the Master Spreadsheet Architecture<\/h3>\n\n\n\n<p>Your Google Sheet acts as your central database, your staging area, and your editorial review queue. Create a fresh sheet containing four distinct tabs:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Overview:<\/strong> Summarises overall clicks, impressions, average position, and the timestamp of the latest automated execution run.<\/li>\n\n\n<li><strong>Striking Distance:<\/strong> Houses queries ranking between positions 5 and 15 with at least 100 impressions, providing an immediate hit list for rapid traffic improvements.<\/li>\n\n\n<li><strong>Content Decay:<\/strong> Highlights URLs that have lost 15 percent or more of their organic search clicks over the trailing four-week window.<\/li>\n\n\n<li><strong>Execution Logs:<\/strong> Stores run times, API response codes, and error traces so you can debug issues quickly.<\/li>\n\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Open the Apps Script Editor<\/h3>\n\n\n\n<p>Inside your master Google Sheet, navigate to the top menu, select Extensions, and click Apps Script. This launches your cloud-based code editor. Name your project SEO Core Engine.<\/p>\n\n\n\n<p>If you prefer working in your local desktop environment using VS Code, you can use the open-source Google clasp command-line interface. This lets you write modern JavaScript locally, commit your revisions to a private GitHub repository, and push code up to Google Cloud with a single terminal command.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 4: Build the Search Console Ingestion Logic<\/h3>\n\n\n\n<p>Create a function that communicates with the Search Console REST API. Your JSON payload should request organic search metrics from the past 28 days, grouped by both page and query.<\/p>\n\n\n\n<p>Add filtering logic to your script function. Tell it to isolate queries where the average position sits between 4.5 and 15.5, with minimum impression thresholds. These terms represent immediate opportunities: search queries where Google already views your page as relevant, but your on-page copy lacks the precision to break into the top three organic results. The script cleans the response payload and writes the matching rows directly to your Striking Distance tab.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5: Connect AI APIs for Metadata Generation<\/h3>\n\n\n\n<p>Next, write a function that loops through the filtered page URLs and primary queries, passing them to a large language model API via the built-in UrlFetchApp service.<\/p>\n\n\n\n<p>Draft your prompt instructions with care. Instruct the AI model to behave as an experienced search marketer. Require title tags under 60 characters and meta descriptions under 155 characters. Demand that it incorporate the primary striking-distance query near the start of the title tag while including an engaging hook to improve click-through rates. Parse the returned JSON response and populate the suggested text into the review columns of your spreadsheet.<\/p>\n\n\n\n<p>If you want to skip manual code maintenance and keep your technical optimisation running continuously across conventional and generative search, you can tap into SEO &amp; GEO Autopilot by choosing to <strong><a href=\"https:\/\/aicmo.uk\/seo-autopilot\">Start Your SEO Autopilot<\/a><\/strong> to put programmatic keyword and metadata improvements on cruise control.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 6: Configure Daily Time-Driven Triggers<\/h3>\n\n\n\n<p>Once your manual script executions populate your spreadsheet tabs correctly, turn on automated scheduling:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>Click the clock icon on the left menu of the Apps Script dashboard to view your Triggers.<\/li>\n\n\n<li>Click the Add Trigger button located in the bottom right corner.<\/li>\n\n\n<li>Choose your primary data retrieval function as the target routine.<\/li>\n\n\n<li>Set the event source to Time-driven, choose the Day timer option, and select an execution window between 2:00 AM and 3:00 AM.<\/li>\n\n<\/ol>\n\n\n\n<p>Your automated framework is now live. Every morning, your marketing team can open the master spreadsheet, inspect new keyword movements, and approve AI-generated metadata in a matter of minutes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Essential Automated Workflows to Add to Your Pipeline<\/h2>\n\n\n\n<p>Once your primary data pipeline is operational, you can bolt on modular routines to extract even greater value from your organic marketing efforts.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Automated Content Decay Alerts<\/h3>\n\n\n\n<p>Articles naturally lose search traction as competing websites refresh their guides or user terminology evolves. Your script can compare page performance over the last four weeks against the previous four-week period. When an important commercial landing page loses more than 15 percent of its organic traffic, the script flags the URL, calculates the drop in impressions, and prompts an AI endpoint to suggest missing subtopics or outdated sections that need updating.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Smart Internal Linking Detection<\/h3>\n\n\n\n<p>Strategic internal links pass authority across your domain. You can write an Apps Script routine that matches newly published articles against your database of commercial pillar pages. When the script detects that a new post touches on topics covered by a core service page, it writes the target URL and suggested anchor text into your spreadsheet, ensuring link equity flows through your site structure without manual guesswork.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Lightweight HTTP Status and Header Audits<\/h3>\n\n\n\n<p>You do not need heavy desktop crawling software to detect broken links on key pages. A simple Apps Script function using UrlFetchApp can send lightweight HTTP requests to your top commercial URLs. If any URL returns a 404 error, a 500 server issue, or an unexpected redirect loop, the script sends an urgent email notification to your technical team, allowing you to fix broken assets before search engines demote your rankings.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Generative Engine Tracking and Citations<\/h3>\n\n\n\n<p>Organic discovery is no longer restricted to standard blue search results. Buyers routinely consult AI engines such as ChatGPT, Claude, and Perplexity when researching software and services. If you want your business to maintain authority across conversational search, you must monitor Generative Engine Optimisation (GEO). To secure visibility inside conversational summaries, you can <strong><a href=\"https:\/\/aicmo.uk\/geo-visibility\">Master GEO Targeting with AI<\/a><\/strong> and build real-time brand prominence across local and conversational search queries.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Expanding Your Setup with Dedicated AI Modules<\/h2>\n\n\n\n<p>While Google Apps Script gives you complete flexibility over internal workflows, custom scripts require continual maintenance, error debugging, and API adjustments. Pairing your custom spreadsheets with dedicated automation tools helps you expand without consuming engineering bandwidth.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Tracking Citations with AI Visibility Tracker<\/h3>\n\n\n\n<p>Conventional rank tracking tools show where your pages sit in standard Google search results, but they cannot tell you whether large language models recommend your company during buying conversations. The AI Visibility Tracker monitors conversational platforms continuously. It tracks how frequently your company gets mentioned, gauges brand sentiment, and spots topical gaps where competitors are being recommended instead of your business. Piping this visibility data into your spreadsheet environment provides an unfair advantage over competing brands.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Scaling Production with AI Content Strategist &amp; Generator<\/h3>\n\n\n\n<p>Drafting short title tags with basic scripts is easy, but assembling in-depth topic clusters, comprehensive buyer guides, and multi-channel campaigns requires deep contextual awareness. The AI Content Strategist &amp; Generator analyses search intent, reviews competitor gaps, and produces complete long-form assets that satisfy both search engine crawlers and conversational AI assistants.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Multi-Channel Outreach with the LinkedIn Chrome Plugin<\/h3>\n\n\n\n<p>Organic performance does not happen in isolation. Search algorithms reward brands that show active industry authority, third-party validation, and consistent user engagement. Connecting the LinkedIn Chrome Plugin to your weekly routine allows you to run tailored outreach, share your freshly published articles, and build commercial relationships directly from your browser. This creates genuine referral traffic and social proof signals that reinforce your search engine rankings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Best Practices and Operational Safeguards for Apps Script<\/h2>\n\n\n\n<p>Building on serverless infrastructure requires keeping specific platform boundaries in mind. Follow these technical guidelines to ensure your automation remains stable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Managing Execution Timeouts Defensively<\/h3>\n\n\n\n<p>Google Apps Script enforces a strict execution time limit of six minutes per run on standard Google Workspace accounts. If you try to audit 5,000 URLs in a single run, your script will hit this boundary and terminate abruptly. Prevent this by processing URLs in batches of 50 to 100. Use PropertiesService to store your current loop index. When the execution approaches the five-minute mark, save your state, exit safely, and configure a recurring time trigger to resume from that exact index.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Handling External API Rate Limits<\/h3>\n\n\n\n<p>External AI endpoints occasionally experience network latency, rate limits, or transient outages. Always wrap your UrlFetchApp calls inside try-catch blocks. If an API returns a 429 rate limit or a 503 service unavailable response, instruct your script to pause using Utilities.sleep() and retry using exponential backoff instead of allowing the entire batch to fail.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Keeping Human Editors in the Approval Loop<\/h3>\n\n\n\n<p>Never configure an automated script to push raw AI-generated copy straight to your live production website without human review. Language models can still hallucinate technical details, misinterpret brand tone, or exceed display character limits. Treat your master spreadsheet as an editorial staging area. Requiring an editor to tick an approved status box before pushing changes via a webhook protects your domain reputation and preserves brand voice.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Structuring Modular Project Files<\/h3>\n\n\n\n<p>Avoid dumping all your code into a single massive script file. Split your project into clean, focused script modules inside the Apps Script editor:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Config.gs:<\/strong> Stores API keys, endpoint URLs, and property IDs.<\/li>\n\n\n<li><strong>SearchConsole.gs:<\/strong> Contains data retrieval logic and keyword filtering functions.<\/li>\n\n\n<li><strong>AIEngine.gs:<\/strong> Handles prompt assembly, API requests, and response parsing.<\/li>\n\n\n<li><strong>SheetUtils.gs:<\/strong> Manages cell formatting, row insertions, and execution logging.<\/li>\n\n<\/ul>\n\n\n\n<p>Organising your project this way keeps debugging clean and lets multiple team members collaborate without accidental overwrites.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Custom In-House Automation Versus Outdated Agency Retainers<\/h2>\n\n\n\n<p>For years, businesses assumed that maintaining strong search engine rankings required hiring an expensive digital marketing agency. Yet standard agency retainers frequently yield slow deliverables, vague PDF reports, and endless alignment meetings. Building your own AI-Driven SEO Stack completely upends that model.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Rapid Execution:<\/strong> Instead of waiting several weeks for an external agency to deliver a quarterly technical audit, your automated scripts identify keyword wins overnight.<\/li>\n\n\n<li><strong>Substantial Cost Savings:<\/strong> Agencies regularly charge \u00a33,000 to \u00a38,000 every single month for basic metadata management and monthly reporting. Serverless automation removes these recurring retainers entirely.<\/li>\n\n\n<li><strong>Direct Data Ownership:<\/strong> All historical data, prompt configurations, and audit records remain securely inside your own Google account. You never risk losing access to your insights if you change service providers.<\/li>\n\n\n<li><strong>Effortless Scalability:<\/strong> When your product catalogue grows from 50 pages to 5,000 pages, your automated code handles the additional volume without requiring extra staff or ballooning agency bills.<\/li>\n\n<\/ul>\n\n\n\n<p>Taking charge of your search marketing operations provides your business with an autonomous organic growth engine that adapts swiftly to algorithmic updates and shifts in consumer search habits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Practical Troubleshooting for Common Script Errors<\/h2>\n\n\n\n<p>Even well-architected scripts run into operational snags. Keeping a quick diagnostic checklist handy will save your team hours of frustration.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Authorisation Expired Errors:<\/strong> If your daily trigger suddenly fails with an authorisation error, re-open the Apps Script editor and run any function manually. Google frequently requires you to re-accept OAuth scopes when you modify script permissions or add external network requests.<\/li>\n\n\n<li><strong>Quota Exceeded Notifications:<\/strong> Standard Google accounts have daily UrlFetchApp fetch limits. If your site catalogue is massive, divide your updates across multiple days or upgrade your Google Cloud project billing tier to raise your outbound request ceiling.<\/li>\n\n\n<li><strong>Mismatched Column Indexing:<\/strong> When modifying spreadsheet tabs, never insert new columns between existing data ranges without updating your script&#8217;s numerical column indexes. Using named ranges rather than hardcoded column numbers prevents your script from writing AI metadata into the wrong cells.<\/li>\n\n\n<li><strong>Truncated Search Console Payloads:<\/strong> Search Console API responses return a maximum of 25,000 rows per request. For larger sites, iterate through date ranges or apply specific directory filters to ensure your script captures complete data coverage.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently Asked Questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">How much does it cost to run an AI-driven SEO stack on Google Apps Script?<\/h3>\n\n\n\n<p>Running Google Apps Script is completely free within standard Google Workspace quota limits. Your primary operational cost will be token consumption from external large language model APIs, which typically amounts to less than \u00a35 to \u00a315 per month for metadata generation across several hundred URLs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can Google penalise my website for using AI-generated metadata?<\/h3>\n\n\n\n<p>Google evaluates content based on relevance, quality, and helpfulness rather than whether it was written by humans or machines. However, using automated scripts to push raw, unreviewed AI copy directly to production increases the risk of hallucinated terms and poor grammar. Always maintain a human governance layer to review and approve generated titles before publishing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What are striking-distance queries and why are they important?<\/h3>\n\n\n\n<p>Striking-distance queries are search terms where your site currently ranks between positions 5 and 15 with respectable impression volume. Because search engines already recognise your page as topically relevant, minor optimisations to title tags, headers, and introductory copy can quickly propel these rankings into top-three positions, producing rapid traffic gains.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How does this setup compare to enterprise platforms like SEMrush or Ahrefs?<\/h3>\n\n\n\n<p>While enterprise platforms provide extensive competitive backlink databases and broad market intelligence, they often focus on static analytics rather than automated task execution. An Apps Script pipeline executes bespoke workflows, integrates directly with your Google Workspace data, and automates prompt-based fixes without hefty monthly software fees.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Future-Proofing Your In-House SEO Automation<\/h2>\n\n\n\n<p>Search engine optimisation continues to evolve into a hybrid discipline where traditional ranking signals sit alongside generative AI visibility. Static keyword tracking no longer provides the full picture of how potential customers discover your business online.<\/p>\n\n\n\n<p>Building an <strong>AI-Driven SEO Stack<\/strong> with Google Apps Script provides an affordable, adaptable, and transparent framework for modern organic growth. It frees your marketing team from tedious data extraction, letting them concentrate on strategic campaigns and high-converting content. If you want to eliminate technical bottlenecks, maintain around-the-clock organic health, and <strong><a href=\"https:\/\/aicmo.uk\/seo-autopilot\">Automate Your SEO with AI<\/a><\/strong>, take action today to set up your business for long-term search dominance.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Learn how to build an AI-driven SEO stack with Google Apps Script. Automate reporting, spot striking-distance queries, and refresh metadata without costly tools.<\/p>\n","protected":false},"author":1,"featured_media":84,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,2],"tags":[4],"class_list":["post-85","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aicmo-uk","category-how-to-guides","tag-hidden","aicmo-post"],"_links":{"self":[{"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/posts\/85","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/comments?post=85"}],"version-history":[{"count":14,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/posts\/85\/revisions"}],"predecessor-version":[{"id":9549,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/posts\/85\/revisions\/9549"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/media\/84"}],"wp:attachment":[{"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/media?parent=85"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/categories?post=85"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aicmo.uk\/learn\/wp-json\/wp\/v2\/tags?post=85"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}