{"id":315624,"date":"2026-05-24T14:02:03","date_gmt":"2026-05-24T14:02:03","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/outscoreagent-publisher\/"},"modified":"2026-05-24T14:00:49","modified_gmt":"2026-05-24T14:00:49","slug":"outscoreagent","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/outscoreagent\/","author":23487534,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.3","stable_tag":"1.5.3","tested":"7.0","requires":"6.0","requires_php":"8.1","requires_plugins":null,"header_name":"OutscoreAgent Publisher","header_author":"OutscoreAgent","header_description":"Connect your WordPress site to OutscoreAgent for automated AI-powered article publishing.","assets_banners_color":"0d0b37","last_updated":"2026-05-24 14:00:49","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/outscoreagent.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":15,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.5.3":{"tag":"1.5.3","author":"outscoreagent","date":"2026-05-24 14:00:49"}},"upgrade_notice":{"1.5.3":"<p>Adds a verifiable <code>wp_kses_post()<\/code> escape at the featured-image credit&#039;s <code>the_content<\/code> filter callback to satisfy the wordpress.org review checklist. No functional change; the rendered credit block is visually identical.<\/p>","1.5.2":"<p>Renames the plugin text domain to <code>outscoreagent<\/code> (matches the WordPress.org slug), sanitizes the programmatically-written <code>site_id<\/code> setting, and reduces the unauthenticated response from <code>GET \/status<\/code> to only the plugin version. Stored settings and tokens are preserved.<\/p>","1.5.1":"<p>Removes the duplicate <code>Plugin URI:<\/code> header so the plugin passes the WordPress.org submission check. No functional change.<\/p>","1.5.0":"<p>Renames the plugin text domain and distribution folder to <code>outscoreagent-publisher<\/code> to match the WordPress.org slug. Stored settings and tokens are preserved. The admin settings page URL changes from <code>?page=outscoreagent<\/code> to <code>?page=outscoreagent-publisher<\/code> \u2014 refresh any direct bookmarks.<\/p>","1.4.0":"<p>Adds an IndexNow route self-test and advisory warnings for plugins that commonly interfere with the key route. No configuration change required; existing keys keep working unchanged.<\/p>","1.3.1":"<p>Image-credit mode setting is now applied at save time too, so the chosen mode is reflected in the block editor, REST API, and feeds \u2014 not just the rendered front-end. No configuration change required.<\/p>","1.3.0":"<p>Resolves a 403 &quot;Wrong number of segments&quot; error for sites that also run a JWT auth plugin. Update strongly recommended if you use OutscoreAgent alongside any plugin in the JWT Authentication family.<\/p>","1.2.1":"<p>Compatibility release. Plugin behaviour is unchanged; bump is published in lockstep with a server-side fix so support diagnostics stay aligned.<\/p>","1.2.0":"<p>Featured images are now downloaded into the WP media library by default, so themes and the block editor pick them up automatically. The previous external-URL behaviour is available as an opt-out toggle in Settings \u2192 OutscoreAgent. Minimum PHP version raised to 8.1.<\/p>","1.1.0":"<p>Security hardening: HTTPS enforcement on outbound callbacks and API rate limiting.<\/p>","1.0.0":"<p>Initial release. No upgrade steps required.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3546309,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3546309,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3546309,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3546309,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.5.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3546309,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3546309,"resolution":"2","location":"assets","locale":"","width":1280,"height":658},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3546309,"resolution":"3","location":"assets","locale":"","width":1280,"height":800}},"screenshots":[]},"plugin_section":[],"plugin_tags":[2353,5936,569,529,7143],"plugin_category":[],"plugin_contributors":[264214],"plugin_business_model":[],"class_list":["post-315624","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-articles","plugin_tags-automation","plugin_tags-content","plugin_tags-publishing","plugin_contributors-outscoreagent","plugin_committers-outscoreagent"],"banners":{"banner":"https:\/\/ps.w.org\/outscoreagent\/assets\/banner-772x250.png?rev=3546309","banner_2x":"https:\/\/ps.w.org\/outscoreagent\/assets\/banner-1544x500.png?rev=3546309","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/outscoreagent\/assets\/icon-128x128.png?rev=3546309","icon_2x":"https:\/\/ps.w.org\/outscoreagent\/assets\/icon-256x256.png?rev=3546309","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/outscoreagent\/assets\/screenshot-1.png?rev=3546309","caption":""},{"src":"https:\/\/ps.w.org\/outscoreagent\/assets\/screenshot-2.png?rev=3546309","caption":""},{"src":"https:\/\/ps.w.org\/outscoreagent\/assets\/screenshot-3.png?rev=3546309","caption":""}],"raw_content":"<!--section=description-->\n<p>OutscoreAgent is a platform that generates high-quality, SEO-optimised articles using AI and publishes them directly to your WordPress site.<\/p>\n\n<p>This plugin creates a secure REST API endpoint on your WordPress installation that the OutscoreAgent platform uses to push finished articles. Once installed and configured, articles created on the OutscoreAgent platform are automatically published to your site with their correct title, content, featured image, and metadata.<\/p>\n\n<p><strong>Key features:<\/strong><\/p>\n\n<ul>\n<li>Secure bearer token authentication \u2014 only OutscoreAgent can publish to your site<\/li>\n<li>HTTPS enforcement \u2014 tokens are never transmitted over plain HTTP<\/li>\n<li>Per-site configuration \u2014 each WordPress site has its own independent token<\/li>\n<li>Structured error logging \u2014 detailed logs available in the admin panel<\/li>\n<li>Clean uninstall \u2014 removing the plugin deletes all its data from your database<\/li>\n<\/ul>\n\n<p><strong>How it works:<\/strong><\/p>\n\n<ol>\n<li>Install and activate the plugin<\/li>\n<li>Generate an API token from the OutscoreAgent settings page<\/li>\n<li>Enter the token and your site's REST API URL in the OutscoreAgent platform<\/li>\n<li>Articles are published automatically when they finish generating<\/li>\n<\/ol>\n\n<p><strong>Third-party service requirement:<\/strong><\/p>\n\n<p>This plugin is the WordPress-side companion of the <a href=\"https:\/\/outscoreagent.com\/\">OutscoreAgent<\/a> platform and requires an active OutscoreAgent account to be useful. The plugin itself does nothing on its own \u2014 it exposes a secure REST endpoint that the OutscoreAgent platform calls to publish generated articles, and it sends post-status updates back to the platform so article state stays in sync. Without an OutscoreAgent account, no data is ever sent anywhere; the plugin simply remains idle.<\/p>\n\n<p><strong>Data transmitted to OutscoreAgent:<\/strong><\/p>\n\n<p>When you configure a callback URL in the plugin settings (provided to you by the OutscoreAgent platform), the plugin will transmit the following information to OutscoreAgent each time a post it originally published changes status (draft \u2192 publish, publish \u2192 trash, etc.):<\/p>\n\n<ul>\n<li>The post's WordPress ID<\/li>\n<li>The post's public permalink and WP admin edit link<\/li>\n<li>The new post status (e.g. <code>publish<\/code>, <code>draft<\/code>, <code>trash<\/code>)<\/li>\n<li>The OutscoreAgent external article ID the post is linked to<\/li>\n<li>A UTC timestamp<\/li>\n<\/ul>\n\n<p>No post content, user personal data, or WordPress credentials are ever sent. See the <strong>External services<\/strong> section below for the full disclosure. By using this plugin you agree to the OutscoreAgent <a href=\"https:\/\/outscoreagent.com\/terms\">Terms of Service<\/a> and <a href=\"https:\/\/outscoreagent.com\/privacy\">Privacy Policy<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin relies on the OutscoreAgent platform at <strong>https:\/\/outscoreagent.com\/<\/strong> to function. An OutscoreAgent account is required \u2014 without one, the plugin stays idle and no data leaves your site.<\/p>\n\n<p><strong>Service used:<\/strong> OutscoreAgent (operated by OutscoreAgent, the plugin author).<\/p>\n\n<p><strong>What the service does:<\/strong> Generates SEO-optimised articles with AI on OutscoreAgent's servers, then publishes them to your WordPress site via the REST endpoint this plugin exposes. Tracks the post-status lifecycle (draft \/ published \/ trashed) for its own content dashboard.<\/p>\n\n<p><strong>When data is sent to the service:<\/strong> Whenever a WordPress post that was originally published by OutscoreAgent changes status (e.g. the editor moves it from draft to publish, or trashes it). Sending is triggered by WordPress's <code>transition_post_status<\/code> hook. No data is sent for posts the plugin did not create. No data is sent before you configure the callback URL in <strong>Settings \u2192 OutscoreAgent Publisher<\/strong>.<\/p>\n\n<p><strong>What data is sent:<\/strong> A single JSON payload containing:<\/p>\n\n<ul>\n<li><code>event<\/code> \u2014 the literal string <code>post_status_changed<\/code><\/li>\n<li><code>external_id<\/code> \u2014 the OutscoreAgent article ID this post is linked to<\/li>\n<li><code>wp_post_id<\/code> \u2014 the numeric WordPress post ID<\/li>\n<li><code>wp_post_url<\/code> \u2014 the public permalink of the post<\/li>\n<li><code>wp_post_status<\/code> \u2014 the new WordPress post status (e.g. <code>publish<\/code>, <code>draft<\/code>, <code>trash<\/code>)<\/li>\n<li><code>wp_edit_url<\/code> \u2014 the WordPress admin edit URL for the post<\/li>\n<li><code>timestamp<\/code> \u2014 ISO-8601 UTC timestamp of the transition<\/li>\n<\/ul>\n\n<p>No post content, user personal data, comments, WordPress credentials, or IP addresses are transmitted.<\/p>\n\n<p><strong>Transport:<\/strong> HTTPS POST to the callback URL the OutscoreAgent platform configures in the plugin settings. The plugin refuses to send callbacks over plain HTTP (localhost is exempt for development only).<\/p>\n\n<p><strong>Terms and Privacy:<\/strong> The OutscoreAgent service is governed by its <a href=\"https:\/\/outscoreagent.com\/terms\">Terms of Service<\/a> and <a href=\"https:\/\/outscoreagent.com\/privacy\">Privacy Policy<\/a>. By connecting this plugin to your OutscoreAgent account you agree to both.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Download the plugin ZIP from the OutscoreAgent platform or repository.<\/li>\n<li>In your WordPress admin panel, go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Upload the ZIP file and click <strong>Install Now<\/strong>.<\/li>\n<li>Click <strong>Activate Plugin<\/strong>.<\/li>\n<li>Go to <strong>Settings \u2192 OutscoreAgent Publisher<\/strong> to generate your API token.<\/li>\n<li>Copy the token and paste it into the OutscoreAgent platform settings for this site.<\/li>\n<\/ol>\n\n<p><strong>Manual installation:<\/strong><\/p>\n\n<ol>\n<li>Unzip the plugin archive.<\/li>\n<li>Upload the <code>outscoreagent<\/code> folder to your <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin from the WordPress admin <strong>Plugins<\/strong> screen.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20outscoreagent%20account%3F\"><h3>Do I need an OutscoreAgent account?<\/h3><\/dt>\n<dd><p>Yes. This plugin is the WordPress-side component of the OutscoreAgent platform. You need an active OutscoreAgent account and at least one connected site to use this plugin.<\/p><\/dd>\n<dt id=\"is%20https%20required%3F\"><h3>Is HTTPS required?<\/h3><\/dt>\n<dd><p>Yes. All API requests from the OutscoreAgent platform must be made over HTTPS to protect your bearer token in transit. The plugin will reject requests made over plain HTTP in production environments.<\/p><\/dd>\n<dt id=\"what%20data%20does%20the%20plugin%20store%3F\"><h3>What data does the plugin store?<\/h3><\/dt>\n<dd><p>The plugin stores:<\/p>\n\n<ul>\n<li>Your API token (as a SHA-256 hash \u2014 the raw token is shown once and never stored)<\/li>\n<li>Plugin settings (debug mode, platform site ID)<\/li>\n<li>A publish log for auditing article sync activity<\/li>\n<li>Per-post metadata for synced articles<\/li>\n<\/ul><\/dd>\n<dt id=\"what%20data%20does%20the%20plugin%20send%20to%20outscoreagent%3F\"><h3>What data does the plugin send to OutscoreAgent?<\/h3><\/dt>\n<dd><p>Only post-status change notifications, and only for posts that OutscoreAgent itself originally published. See the <strong>External services<\/strong> section for the exact payload and triggers. No user personal data or post content is transmitted.<\/p><\/dd>\n<dt id=\"where%20can%20i%20find%20error%20logs%3F\"><h3>Where can I find error logs?<\/h3><\/dt>\n<dd><p>Error logs are stored in two places:<\/p>\n\n<ol>\n<li>The WordPress <code>wp-content\/debug.log<\/code> file (requires <code>WP_DEBUG_LOG<\/code> to be enabled in <code>wp-config.php<\/code>)<\/li>\n<li>The OutscoreAgent settings page in the WordPress admin panel, which shows the last 20 error entries<\/li>\n<\/ol><\/dd>\n<dt id=\"how%20do%20i%20revoke%20the%20api%20token%3F\"><h3>How do I revoke the API token?<\/h3><\/dt>\n<dd><p>Go to <strong>Settings \u2192 OutscoreAgent Publisher<\/strong> and click <strong>Revoke Token<\/strong>. This immediately invalidates the current token. Generate a new token and update your OutscoreAgent platform settings to resume publishing.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20wordpress%20multisite%3F\"><h3>Does this work with WordPress Multisite?<\/h3><\/dt>\n<dd><p>Yes. Each site in a multisite network has its own independent token and settings. There are no network-level settings.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Hardened: the <code>the_content<\/code> filter callback that prepends the featured-image credit now passes its returned HTML through <code>wp_kses_post()<\/code> before concatenation. The credit block was already built from escaped fragments (<code>esc_html<\/code> \/ <code>esc_url<\/code> \/ <code>esc_attr<\/code> around the photographer name, URL, and source label), but the wordpress.org review process requires the escape to be visible at the filter callback's return site, not only inside the helpers that assemble the string.<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Fixed: plugin text domain renamed from <code>outscoreagent-publisher<\/code> to <code>outscoreagent<\/code> to match the WordPress.org plugin slug. All translation strings, the language template (<code>languages\/outscoreagent.pot<\/code>), and the distribution zip's top-level folder are updated. Internal storage keys (<code>outscoreagent_settings<\/code>, <code>outscoreagent_publish_log<\/code>) are unchanged, so existing installs preserve their token and configuration.<\/li>\n<li>Hardened: <code>register_setting()<\/code> sanitize callback now runs <code>sanitize_text_field()<\/code> on the programmatically-written <code>site_id<\/code> and <code>token_hash<\/code> values before persisting them.<\/li>\n<li>Hardened: the public <code>GET \/status<\/code> REST endpoint now returns only <code>{ success, plugin_version }<\/code> to unauthenticated callers. WordPress\/PHP versions, site name, post types, categories, and token state are returned only when the request carries a valid API token. The endpoint remains public so the OutscoreAgent platform can detect the plugin before a token is configured.<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Fixed: removed the <code>Plugin URI:<\/code> header from the main plugin file. It pointed to the same URL as <code>Author URI:<\/code>, which the WordPress.org reviewer flagged. <code>Author URI:<\/code> is retained so users can find the plugin author; a dedicated plugin page can be added back later via <code>Plugin URI:<\/code> once one exists.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Renamed: the plugin text domain and distribution folder are now <code>outscoreagent-publisher<\/code> to match the WordPress.org slug. Internal storage keys (settings, publish log) and the brand prefix on functions\/classes are unchanged, so existing installs keep their token and configuration after upgrading.<\/li>\n<li>Renamed: the admin settings page slug is now <code>?page=outscoreagent-publisher<\/code> (was <code>?page=outscoreagent<\/code>). The \"Settings\" link on the Plugins page is updated automatically; refresh any direct bookmarks.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Added: IndexNow route self-test on the Diagnostics tab. Click \"Run probe now\" to hit the plugin's own <code>\/&lt;key&gt;.txt<\/code> URL from inside WordPress and classify the result (<code>ok<\/code>, <code>not_found<\/code>, <code>forbidden<\/code>, <code>wrong_body<\/code>, <code>redirected<\/code>, <code>server_error<\/code>, <code>loopback_failed<\/code>). Each status comes with a one-line remediation hint so a customer can tell whether a route failure is local (cache, WAF, hijacked hook) or external (CDN, DNS, reverse proxy).<\/li>\n<li>Added: non-blocking advisories on the Settings tab for active plugins that frequently interfere with the IndexNow route without owning IndexNow themselves \u2014 page caches (WP Super Cache, W3 Total Cache, WP Rocket, LiteSpeed, Cache Enabler) and security\/WAF plugins (Wordfence, iThemes Security, Sucuri, NinjaFirewall).<\/li>\n<li>Added: detection of other plugins\/themes hooked on <code>template_redirect<\/code> at priority &lt;= 1, which could short-circuit the request before the IndexNow handler runs. Surfaced only when the loopback probe is failing, to keep the page calm in the happy path.<\/li>\n<li>Added: route-health signal. If <code>flush_rewrite_rules()<\/code> cannot install our rule (<code>.htaccess<\/code> unwritable, mod_rewrite disabled, nginx misconfigured), a clear notice now appears on the Settings tab instead of failing silently.<\/li>\n<li>Hardened: stored IndexNow key value is validated on read; a corrupted option no longer produces a confusing \"another key is being served\" symptom in the loopback probe.<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fixed: the \"Text only \u2014 no clickable links\" and \"Disabled\" image-credit modes now also rewrite the credit in the stored post content, not only at front-end render time. Previously the linked credit remained visible in the block editor, REST API, and any theme\/feed that bypasses the_content filter. Articles whose figure-level marker class survived a Gutenberg edit are transformed at save time on the next publish\/update.<\/li>\n<li>Note: with this change, switching from \"Text only\" or \"Disabled\" to \"Active links\" or \"Active links (nofollow)\" no longer takes effect retroactively \u2014 anchors stripped at save time cannot be restored by the render-time filter. Re-publish the article from the dashboard to restore links under the new mode.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Authenticated REST endpoints now accept a namespaced <code>X-OutscoreAgent-Token<\/code> header in addition to <code>Authorization: Bearer<\/code>. The custom header sidesteps third-party JWT auth plugins (e.g. \"JWT Authentication for WP-API\") which intercept any <code>Authorization: Bearer \u2026<\/code> value and reject our <code>osk_<\/code> tokens with <code>jwt_auth_invalid_token<\/code> \/ \"Wrong number of segments\" before our route handler can run. The OutscoreAgent platform now sends the new header by default; the Bearer fallback is retained for backwards compatibility.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Compatibility release tracking server-side fixes. Multi-organization users editing site integrations and IndexNow keys are now correctly authorized via any of their org memberships (previously could see \"Site not found or access denied\" when their first listed org did not own the site). Plugin behaviour is unchanged \u2014 the fix lives entirely on the OutscoreAgent platform \u2014 but the version bump is published in lockstep so plugin and platform stay aligned in support diagnostics.<\/li>\n<li>Bumped Tested up to header to track the latest stable WordPress release.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Featured images are now downloaded into the WordPress media library by default and set as the post's native featured image. Themes and the block editor pick them up automatically \u2014 no theme changes required.<\/li>\n<li>Added a \"Download featured image to media library\" toggle in the settings page. When disabled, the previous behaviour (remote URL stored in <code>_thumbnail_ext_url<\/code> post meta) is retained.<\/li>\n<li>Repeat syncs of the same article reuse the existing media library attachment instead of re-downloading.<\/li>\n<li>Sideload failures fall back to the external-URL path so posts never end up without an image reference.<\/li>\n<li>Added External services disclosure and privacy details to readme (WordPress.org submission compliance).<\/li>\n<li>Raised minimum PHP version to 8.1.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Added HTTPS enforcement for outbound callback URLs (defense-in-depth).<\/li>\n<li>Added per-token rate limiting (30 requests\/minute) on all authenticated REST endpoints.<\/li>\n<li>Added \"Settings\" link on the Plugins page for quick access.<\/li>\n<li>Added Plugin URI and Author URI linking to outscoreagent.com.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Secure bearer token authentication.<\/li>\n<li>REST API endpoint for article publishing.<\/li>\n<li>Structured admin error log.<\/li>\n<li>Full uninstall cleanup.<\/li>\n<\/ul>","raw_excerpt":"Connect your WordPress site to OutscoreAgent for automated AI-powered article publishing.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/315624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=315624"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/outscoreagent"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=315624"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=315624"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=315624"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=315624"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=315624"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=315624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}