Skip to main content
MainWP provides programmatic access through two distinct systems that serve different purposes.

What You’ll Learn

  • The difference between the REST API and Abilities API
  • When to use each API
  • How authentication works across both systems

MainWP REST API

The MainWP REST API is MainWP’s native HTTP interface for external integrations. It exposes fixed endpoints for managing sites, updates, clients, tags, and costs through standard REST conventions.

REST API Reference

MainWP’s native HTTP endpoints for site management, updates, clients, and tags.
Base URL: https://your-dashboard.com/wp-json/mainwp/v2/ The REST API works well for scripts, direct HTTP calls, and established automation workflows where you know exactly which endpoints to call.

WordPress Abilities API

The Abilities API is a WordPress-wide framework for capability discovery and execution. It’s a separate WordPress plugin that provides a standardized registry where any plugin can register discrete actions (“abilities”) with defined schemas. MainWP registers 62 abilities into this framework.

Abilities API Reference

WordPress capability registry with MainWP’s 62 registered abilities for AI agents and automation tools.
Base URL: https://your-dashboard.com/wp-json/wp-abilities/v1/ The key distinction is discoverability. AI agents and automation tools can query the Abilities API to learn what actions are available, what parameters they accept, and what they return—all through structured JSON schemas. The REST API requires prior knowledge of endpoint paths and parameters.

Authentication

Both systems accept the same Bearer tokens generated in your MainWP Dashboard:
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://your-dashboard.com/wp-json/mainwp/v2/sites/basic"
Generate API keys at Dashboard > REST API > Add API Keys. For detailed setup, see the REST API Setup Guide.

Requirements

SystemRequirements
REST APIMainWP Dashboard accessible via HTTPS, non-Plain permalinks
Abilities APIREST API requirements plus MainWP v6+ and WordPress Abilities API plugin