The Picklr WordPress REST API

The public read surface of thepicklr.com, served by WordPress core and the site's plugins. Anonymous GET returns the franchise's own published content — 157 club location records, 53 pages, 23 blog posts, 5 press items and 4 events — with page-number pagination, X-WP-Total headers and sparse-fieldset support. Writes require a WordPress Application Password and are not offered to third parties. No OpenAPI is published by the provider; the description in openapi/ is a mechanical transform of the route index the site serves at /wp-json/, restricted to routes whose anonymous access was individually verified.

Operations 21

GET /wp/v2/posts List posts #
GET /wp/v2/posts/{id} Retrieve posts #
GET /wp/v2/pages List pages #
GET /wp/v2/pages/{id} Retrieve pages #
GET /wp/v2/media List media #
GET /wp/v2/media/{id} Retrieve media #
GET /wp/v2/location List location #
GET /wp/v2/location/{id} Retrieve location #
GET /wp/v2/press List press #
GET /wp/v2/press/{id} Retrieve press #
GET /wp/v2/event List event #
GET /wp/v2/event/{id} Retrieve event #
GET /wp/v2/club_clinics List club clinics #
GET /wp/v2/club_clinics/{id} Retrieve club clinics #
GET /wp/v2/categories List categories #
GET /wp/v2/categories/{id} Retrieve categories #
GET /wp/v2/tags List tags #
GET /wp/v2/tags/{id} Retrieve tags #
GET /wp/v2/types List types #
GET /wp/v2/taxonomies List taxonomies #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/the-picklr-wordpress-rest-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

the-picklr-wordpress-rest-openapi.json Raw ↑
{
  "openapi": "3.1.0",
  "info": {
    "title": "The Picklr WordPress REST API (derived)",
    "version": "wp/v2",
    "summary": "Public read surface of thepicklr.com, derived from the live WordPress REST route index.",
    "description": "DERIVED ARTIFACT \u2014 The Picklr does NOT publish an OpenAPI description. This document is a mechanical transform of the WordPress REST API route index the company serves at https://thepicklr.com/wp-json/ (HTTP 200, 937 routes, fetched 2026-08-30). Every path, parameter, type, enum, default and bound below is copied verbatim from that served index; nothing is invented.\n\nScope is deliberately narrow: only the wp/v2 collections whose anonymous GET was individually verified to return HTTP 200 on 2026-08-30 are included, and only the GET method, because anonymous access to this deployment is read-only. The content it exposes is the franchise's own published data \u2014 157 club locations, 53 pages, 23 blog posts, 5 press items and 4 events.\n\nThis is the marketing-site content API. Court booking, membership billing and reservations for The Picklr run on PlayByPoint (app.playbypoint.com/f/thepicklr<club>), a third-party SaaS platform, and are NOT part of this or any Picklr-owned contract.",
    "contact": {
      "name": "The Picklr",
      "url": "https://thepicklr.com/",
      "email": "hello@thepicklr.com"
    },
    "termsOfService": "https://thepicklr.com/terms-of-use/",
    "x-provenance": {
      "method": "derived",
      "source": "https://thepicklr.com/wp-json/",
      "source_http_status": 200,
      "derived": "2026-08-30",
      "derived_by": "api-evangelist enrichment pipeline (local-v1)",
      "note": "Not published by the provider. Do not represent this as a first-party specification."
    }
  },
  "servers": [
    {
      "url": "https://thepicklr.com/wp-json",
      "description": "Production WordPress REST API for thepicklr.com"
    }
  ],
  "paths": {
    "/wp/v2/posts": {
      "get": {
        "operationId": "get_wp_v2_posts",
        "summary": "List posts",
        "description": "Anonymous read access verified 2026-08-30 against the live endpoint.",
        "tags": [
          "posts"
        ],
        "parameters": [
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Scope under which the request is made; determines fields present in response.",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "embed",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Current page of the collection.",
            "schema": {
              "type": "integer",
              "default": 1,
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "description": "Maximum number of items to be returned in result set.",
            "schema": {
              "type": "integer",
              "default": 10,
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "search",
            "in": "query",
            "required": false,
            "description": "Limit results to those matching a string.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "description": "Limit response to posts published after a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modified_after",
            "in": "query",
            "required": false,
            "description": "Limit response to posts modified after a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "author",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts assigned to specific authors.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "author_exclude",
            "in": "query",
            "required": false,
            "description": "Ensure result set excludes posts assigned to specific authors.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "description": "Limit response to posts published before a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modified_before",
            "in": "query",
            "required": false,
            "description": "Limit response to posts modified before a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "exclude",
            "in": "query",
            "required": false,
            "description": "Ensure result set excludes specific IDs.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "include",
            "in": "query",
            "required": false,
            "description": "Limit result set to specific IDs.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "search_semantics",
            "in": "query",
            "required": false,
            "description": "How to interpret the search input.",
            "schema": {
              "type": "string",
              "enum": [
                "exact"
              ]
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "description": "Offset the result set by a specific number of items.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "order",
            "in": "query",
            "required": false,
            "description": "Order sort attribute ascending or descending.",
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ],
              "default": "desc"
            }
          },
          {
            "name": "orderby",
            "in": "query",
            "required": false,
            "description": "Sort collection by post attribute.",
            "schema": {
              "type": "string",
              "enum": [
                "author",
                "date",
                "id",
                "include",
                "modified",
                "parent",
                "relevance",
                "slug",
                "include_slugs",
                "title"
              ],
              "default": "date"
            }
          },
          {
            "name": "search_columns",
            "in": "query",
            "required": false,
            "description": "Array of column names to be searched.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "enum": [
                  "post_title",
                  "post_content",
                  "post_excerpt"
                ],
                "type": "string"
              }
            }
          },
          {
            "name": "slug",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts with one or more specific slugs.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts assigned one or more statuses.",
            "schema": {
              "type": "array",
              "default": "publish",
              "items": {
                "enum": [
                  "publish",
                  "future",
                  "draft",
                  "pending",
                  "private",
                  "trash",
                  "auto-draft",
                  "inherit",
                  "request-pending",
                  "request-confirmed",
                  "request-failed",
                  "request-completed",
                  "acf-disabled",
                  "spam",
                  "jp-temp-feedback",
                  "email_sent",
                  "email_failed",
                  "email_scheduled",
                  "draft-revision",
                  "pending-revision",
                  "future-revision",
                  "any",
                  "draft-revision",
                  "pending-revision",
                  "future-revision"
                ],
                "type": "string"
              }
            }
          },
          {
            "name": "tax_relation",
            "in": "query",
            "required": false,
            "description": "Limit result set based on relationship between multiple taxonomies.",
            "schema": {
              "type": "string",
              "enum": [
                "AND",
                "OR"
              ]
            }
          },
          {
            "name": "categories",
            "in": "query",
            "required": false,
            "description": "Limit result set to items with specific terms assigned in the categories taxonomy.",
            "schema": {
              "type": "object"
            }
          },
          {
            "name": "categories_exclude",
            "in": "query",
            "required": false,
            "description": "Limit result set to items except those with specific terms assigned in the categories taxonomy.",
            "schema": {
              "type": "object"
            }
          },
          {
            "name": "tags",
            "in": "query",
            "required": false,
            "description": "Limit result set to items with specific terms assigned in the tags taxonomy.",
            "schema": {
              "type": "object"
            }
          },
          {
            "name": "tags_exclude",
            "in": "query",
            "required": false,
            "description": "Limit result set to items except those with specific terms assigned in the tags taxonomy.",
            "schema": {
              "type": "object"
            }
          },
          {
            "name": "sticky",
            "in": "query",
            "required": false,
            "description": "Limit result set to items that are sticky.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "ignore_sticky",
            "in": "query",
            "required": false,
            "description": "Whether to ignore sticky posts or not.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "format",
            "in": "query",
            "required": false,
            "description": "Limit result set to items assigned one or more given formats.",
            "schema": {
              "type": "array",
              "items": {
                "enum": [
                  "standard",
                  "aside",
                  "chat",
                  "gallery",
                  "link",
                  "image",
                  "quote",
                  "status",
                  "video",
                  "audio"
                ],
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                }
              }
            },
            "headers": {
              "X-WP-Total": {
                "description": "Total number of items in the collection.",
                "schema": {
                  "type": "integer"
                }
              },
              "X-WP-TotalPages": {
                "description": "Total number of pages available.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "description": "Invalid parameter.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "401": {
            "description": "Authentication required or insufficient capability (code rest_forbidden).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "404": {
            "description": "No route or resource matched (code rest_no_route / rest_post_invalid_id).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          }
        }
      }
    },
    "/wp/v2/posts/{id}": {
      "get": {
        "operationId": "get_wp_v2_posts_id",
        "summary": "Retrieve posts",
        "description": "Anonymous read access verified 2026-08-30 against the live endpoint.",
        "tags": [
          "posts"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer"
            },
            "description": "Unique identifier for the resource."
          },
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Scope under which the request is made; determines fields present in response.",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "embed",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "excerpt_length",
            "in": "query",
            "required": false,
            "description": "Override the default excerpt length.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "password",
            "in": "query",
            "required": false,
            "description": "The password for the post if it is password protected.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            },
            "headers": {}
          },
          "400": {
            "description": "Invalid parameter.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "401": {
            "description": "Authentication required or insufficient capability (code rest_forbidden).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "404": {
            "description": "No route or resource matched (code rest_no_route / rest_post_invalid_id).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          }
        }
      }
    },
    "/wp/v2/pages": {
      "get": {
        "operationId": "get_wp_v2_pages",
        "summary": "List pages",
        "description": "Anonymous read access verified 2026-08-30 against the live endpoint.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Scope under which the request is made; determines fields present in response.",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "embed",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Current page of the collection.",
            "schema": {
              "type": "integer",
              "default": 1,
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "description": "Maximum number of items to be returned in result set.",
            "schema": {
              "type": "integer",
              "default": 10,
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "search",
            "in": "query",
            "required": false,
            "description": "Limit results to those matching a string.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "description": "Limit response to posts published after a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modified_after",
            "in": "query",
            "required": false,
            "description": "Limit response to posts modified after a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "author",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts assigned to specific authors.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "author_exclude",
            "in": "query",
            "required": false,
            "description": "Ensure result set excludes posts assigned to specific authors.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "description": "Limit response to posts published before a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modified_before",
            "in": "query",
            "required": false,
            "description": "Limit response to posts modified before a given ISO8601 compliant date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "exclude",
            "in": "query",
            "required": false,
            "description": "Ensure result set excludes specific IDs.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "include",
            "in": "query",
            "required": false,
            "description": "Limit result set to specific IDs.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "menu_order",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts with a specific menu_order value.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "search_semantics",
            "in": "query",
            "required": false,
            "description": "How to interpret the search input.",
            "schema": {
              "type": "string",
              "enum": [
                "exact"
              ]
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "description": "Offset the result set by a specific number of items.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "order",
            "in": "query",
            "required": false,
            "description": "Order sort attribute ascending or descending.",
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ],
              "default": "desc"
            }
          },
          {
            "name": "orderby",
            "in": "query",
            "required": false,
            "description": "Sort collection by post attribute.",
            "schema": {
              "type": "string",
              "enum": [
                "author",
                "date",
                "id",
                "include",
                "modified",
                "parent",
                "relevance",
                "slug",
                "include_slugs",
                "title",
                "menu_order"
              ],
              "default": "date"
            }
          },
          {
            "name": "parent",
            "in": "query",
            "required": false,
            "description": "Limit result set to items with particular parent IDs.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "parent_exclude",
            "in": "query",
            "required": false,
            "description": "Limit result set to all items except those of a particular parent ID.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "type": "integer"
              }
            }
          },
          {
            "name": "search_columns",
            "in": "query",
            "required": false,
            "description": "Array of column names to be searched.",
            "schema": {
              "type": "array",
              "default": [],
              "items": {
                "enum": [
                  "post_title",
                  "post_content",
                  "post_excerpt"
                ],
                "type": "string"
              }
            }
          },
          {
            "name": "slug",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts with one or more specific slugs.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "description": "Limit result set to posts assigned one or more statuses.",
            "schema": {
              "type": "array",
              "default": "publish",
              "items": {
                "enum": [
                  "publish",
                  "future",
                  "draft",
                  "pending",
                  "private",
                  "trash",
                  "auto-draft",
                  "inherit",
                  "request-pending",
                  "request-confirmed",
                  "request-failed",
                  "request-completed",
                  "acf-disabled",
                  "spam",
                  "jp-temp-feedback",
                  "email_sent",
                  "email_failed",
                  "email_scheduled",
                  "draft-revision",
                  "pending-revision",
                  "future-revision",
                  "any",
                  "draft-revision",
                  "pending-revision",
                  "future-revision"
                ],
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                }
              }
            },
            "headers": {
              "X-WP-Total": {
                "description": "Total number of items in the collection.",
                "schema": {
                  "type": "integer"
                }
              },
              "X-WP-TotalPages": {
                "description": "Total number of pages available.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "description": "Invalid parameter.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "401": {
            "description": "Authentication required or insufficient capability (code rest_forbidden).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "404": {
            "description": "No route or resource matched (code rest_no_route / rest_post_invalid_id).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          }
        }
      }
    },
    "/wp/v2/pages/{id}": {
      "get": {
        "operationId": "get_wp_v2_pages_id",
        "summary": "Retrieve pages",
        "description": "Anonymous read access verified 2026-08-30 against the live endpoint.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer"
            },
            "description": "Unique identifier for the resource."
          },
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Scope under which the request is made; determines fields present in response.",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "embed",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "excerpt_length",
            "in": "query",
            "required": false,
            "description": "Override the default excerpt length.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "password",
            "in": "query",
            "required": false,
            "description": "The password for the post if it is password protected.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            },
            "headers": {}
          },
          "400": {
            "description": "Invalid parameter.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "401": {
            "description": "Authentication required or insufficient capability (code rest_forbidden).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          },
          "404": {
            "description": "No route or resource matched (code rest_no_route / rest_post_invalid_id).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WPError"
                }
              }
            }
          }
        }
      }
    },
    "/wp/v2/media": {
      "get": {
        "operationId": "get_wp_v2_media",
        "summary": "List media",
        "description": "Anonymous read access verified 2026-08-30 against the live endpoint.",
        "tags": [
          "media"
        ],
        "parameters": [
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Scope under which the request is made; determines fields present in response.",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "embed",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Current page of the collection.",
            "schema": {
              "type": "integer",
              "default": 1,
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "description": "Maximum number of items to be returned in result set.",
            "schema": {
              "type": "integer",
              "default": 10,
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "search",
            "in": "query",
            "required": false,
            "description": "Limit results to those matching a string.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "description": "Limit response to posts published after a given ISO8601 compliant date.",


# --- truncated at 32 KB (126 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/the-picklr/refs/heads/main/openapi/the-picklr-wordpress-rest-openapi.json