Contents
On this page

List Addresses - Plugixa Permalink Manager

GET /plugixa-permalink-manager/v1/uris

List the items of one content type, one page at a time, each with its custom address, its WordPress address and its update mode.

Needs the plugixa_permalink_manager_view capability.

Note. This lists content, not stored addresses: items with no custom address are included, with uri set to null. type defaults to post even when kind is term, so always send type with kind=term. A content type the plugin does not manage returns an empty list rather than an error.

Request

GET https://your-site.example/wp-json/plugixa-permalink-manager/v1/uris?kind=post&type=product&filter=custom

Query parameters

Name Type Default Description
kind string post post or term
type string post The post type or taxonomy
filter string all all, custom (a custom address is in force) or native (the item uses its WordPress address)
status string Posts only: one of publish, private, draft, pending or future. Without it, all five are listed
search string Matches the title, the slug or the custom address. A number also matches the id
orderby string date for posts, title for terms title, date, uri or id. Terms have no date and sort by name instead
order string desc for posts, asc for terms asc or desc
page integer 1 Page to return, from 1
per_page integer 50 Rows per page, 1 to 100

See lists and pagination. Posts are listed only when the caller may read them in WordPress.

Responses

200 OK. data is one page of items.

{
  "success": true,
  "data": [
    {
      "kind": "post",
      "id": 36,
      "key": "post:36",
      "type": "product",
      "title": "Skyline 2 Tent",
      "slug": "skyline-2",
      "status": "publish",
      "uri": "shop/tents/skyline-2",
      "native_uri": "product/skyline-2",
      "is_custom": true,
      "mode": -1,
      "source": "manual",
      "lock": null,
      "permalink": "https://your-site.example/shop/tents/skyline-2/",
      "edit_url": "https://your-site.example/wp-admin/post.php?post=36&action=edit",
      "redirects_count": 1,
      "modified_at": "2026-11-12 09:30:00"
    }
  ],
  "meta": {
    "total": 18,
    "page": 1,
    "per_page": 50,
    "pages": 1
  }
}
Field Type Meaning
data[] object One item, in the shape of Get Address
meta.total integer Items matching the filters, before paging
meta.page integer The page returned
meta.per_page integer Rows per page
meta.pages integer Number of pages

Errors

Status Code When
400 rest_invalid_param kind, filter, orderby or order is not one of its values, or per_page is above 100.

Plus the errors every endpoint can return.

Examples

curl -s "https://your-site.example/wp-json/plugixa-permalink-manager/v1/uris?kind=post&type=product&filter=custom" \
  -u "admin:$WP_APP_PASSWORD"
<?php
$ch = curl_init('https://your-site.example/wp-json/plugixa-permalink-manager/v1/uris?kind=post&type=product&filter=custom');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_USERPWD        => 'admin:' . getenv('WP_APP_PASSWORD'),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
const auth = 'Basic ' + btoa(`admin:${process.env.WP_APP_PASSWORD}`);
const response = await fetch('https://your-site.example/wp-json/plugixa-permalink-manager/v1/uris?kind=post&type=product&filter=custom', {
  headers: { 'Authorization': auth },
});
const { data, meta } = await response.json();

Quick Links

Share