Skip to content

Add docs about Yoast Abilities#386

Merged
pls78 merged 10 commits intomainfrom
add/abilities-api-docs
Apr 22, 2026
Merged

Add docs about Yoast Abilities#386
pls78 merged 10 commits intomainfrom
add/abilities-api-docs

Conversation

@leonidasmi
Copy link
Copy Markdown
Contributor

Fixes #

Summary

Relevant technical choices

Technical choices that affect more than this issue:

Test instructions

This PR can be acceptance tested by following these steps:
1.
1.
1.

Quality assurance

  • Security - I have thought about any security implications this code might add.
  • Performance - I have checked that this code doesn't impact performance (greatly).
  • Caching - I have analyzed the caching methods that this code touches and have added instructions to deal with those.
  • Tested - I have tested this code to the best of my abilities.
  • Automated tests - I have added unit tests to verify the code works as intended.
  • Testability - I have added unique ids to elements, so they can be located in automated testing.
  • I have altered a filename.
    • I have adjusted the ID property accordingly and updated all internal links.
    • I have added the redirect to the _redirects file in the root of the project.

@leonidasmi leonidasmi self-assigned this Apr 3, 2026
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Apr 3, 2026

Deploying yoast-developer with  Cloudflare Pages  Cloudflare Pages

Latest commit: b3c77da
Status: ✅  Deploy successful!
Preview URL: https://7fb1ff47.yoast-developer.pages.dev
Branch Preview URL: https://add-abilities-api-docs.yoast-developer.pages.dev

View logs

@leonidasmi leonidasmi marked this pull request as ready for review April 6, 2026 08:11
@pls78 pls78 self-assigned this Apr 15, 2026
This documentation explains what is the Abilities API and how [Yoast SEO](https://yoast.com/product/yoast-seo-wordpress/) integrates with it.

## What is the Abilities API?
[Abilities API was introduced in WordPress 6.9](https://developer.wordpress.org/news/2025/11/introducing-the-wordpress-abilities-api/), as a new standardized way for plugins to expose what they can do. It allows plugins to do so by providing:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would invert the sentences here, starting with what Abilities API is and the when it has been released

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done here.


## What is the Abilities API?
[Abilities API was introduced in WordPress 6.9](https://developer.wordpress.org/news/2025/11/introducing-the-wordpress-abilities-api/), as a new standardized way for plugins to expose what they can do. It allows plugins to do so by providing:
* A **registry** where plugins declare their capabilities (also know as `abilities`) with structured input/output schemas.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know if it is just me, but I still don't get what abilities/capabilities are in the plugin context

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this might make it a bit clearer? In any case, I think everything that comes after elaborates that part.

* A **registry** where plugins declare their capabilities (also know as `abilities`) with structured input/output schemas.
* A **central REST discovery endpoint** (`/wp-json/wp-abilities/v1/abilities`) where any client/plugin can list everything that's available.
* A **standardized execution endpoint** (`/run`) to invoke any registered ability.
* **Permission checks** baked into every ability, so access control is consistent.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I perceived "bakes" as being a bit too informal here 😁

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done here.

That way, Yoast SEO exposes the results of its analyses to authenticated AI agents, enabling users to use AI capabilities to easily navigate through useful SEO data of their website and create reports, map out plans and perform SEO-related actions accordingly.

### Third-party code
A more traditional way to consume the Yoast SEO Abilities API, any plugin that is interested in building features on top of Yoast SEO Analyses can now use the new WP REST API endpoints, to reliably get information about a website's recent posts, in a structured way.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first and second sentences feel disjoint, and I think there are a bit too much commas 😅
Suggestion:

For plugins interested in building features on top of Yoast SEO Analyses, a more traditional way to consume the Yoast SEO Abilities API would be to use the new WP REST API endpoints: this way information about a website's recent posts can be reliably retrieved in a structured way.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, fair enough. I revamped your suggestion here, hope it's better!

Comment thread docs/features/yoast-abilities-api/recent-posts-inclusive-language-ability.md Outdated
Comment thread docs/features/yoast-abilities-api/recent-posts-readability-ability.md Outdated
Comment thread docs/features/yoast-abilities-api/recent-posts-seo-ability.md Outdated
@pls78 pls78 assigned leonidasmi and unassigned pls78 Apr 20, 2026
@leonidasmi leonidasmi assigned pls78 and unassigned leonidasmi Apr 21, 2026
@pls78 pls78 merged commit 01cbe2c into main Apr 22, 2026
1 check passed
@pls78 pls78 deleted the add/abilities-api-docs branch April 22, 2026 08:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants