Redirect rules
Summary of redirect rule endpoints
- GET /admin/api/redirect_rules - list all available redirect rules for the current site.
- POST /admin/api/redirect_rules - create a new redirect rule for the current site.
- GET /admin/api/redirect_rules/1 - get data for a single redirect rule.
- PUT /admin/api/redirect_rules/1 - overwrite attributes of a redirect rule.
- DELETE /admin/api/redirect_rules/1 - remove a redirect rule.
List all available redirect rules for the current site
Example
Copy
GET /admin/api/redirect_rules
Example response:
Example
Copy
Status: 200 OK
Example
Copy
[ { id: 1, active: true, regexp: false, source: "/vanity", destination: "/products/handbags/connoisseur", redirect_type: 301, complexity: 1005, created_at: "2019-07-10T13:52:47.000Z", updated_at: "2019-07-10T15:24:34.000Z", url: "http://example.com/admin/api/redirect_rules/1" } ]
Parameters
page
- requested page (default:1
).per_page
- elements per response (default:50
; maximum:250
).search
- a generic search string matching if eithersource
ordestination
contains the passed value.
Filter attributes
Read more about filters.
- Object
redirect_rule
attributes:id
active
regexp
source
destination
redirect_type
complexity
created_at
updated_at
.
Get data for a single redirect rule
Example
Copy
GET /admin/api/redirect_rules/1
Example response:
Example
Copy
Status: 200 OK
Example
Copy
{ id: 1, active: true, regexp: false, source: "/vanity", destination: "/products/handbags/connoisseur", redirect_type: 301, complexity: 1005, created_at: "2019-07-10T13:52:47.000Z", updated_at: "2019-07-10T15:24:34.000Z", url: "http://example.com/admin/api/redirect_rules/1" }
Create a new redirect rule for the current site
Example
Copy
POST /admin/api/redirect_rules
Example data:
Example
Copy
{ "redirect_rule": { "active": true, "source": "/vanity", "destination": "/redirected", "redirect_type": 301 } }
Example response:
Example
Copy
{ "id": 5, "active": true, "regexp": false, "source": "/vanity", "destination": "/redirected", "redirect_type": 301, "complexity": 1009, "created_at": "2019-07-12T13:46:02.001Z", "updated_at": "2019-07-12T13:46:02.001Z", "url": "http://example.com/admin/api/redirect_rules/5" }
Parameters
active
- is the redirect rule considered on an incoming request?regexp
- issource
a regular expression pattern?source
- source path or a regular expression matching a path. If a full URI is provided, only the path portion is applied.destination
- destination path or full URI. Ifregexp
istrue
, backreferences fromsource
may be used ($1
,$2
, ...)redirect_type
- a HTTP code for the redirection response, one of301
,302
or307
.410
is also allowed, but does not result in a redirect.
Update attributes of a redirect rule
Example
Copy
PUT /admin/api/redirect_rules/1
Update the redirect rule with the provided attributes.
Example request:
Example
Copy
PUT http://example.com/admin/api/redirect_rules/3
Example data:
Example
Copy
{ "redirect_rule": { "source": "/landing", "destination": "/products/hyperdrive/spring-sale", "redirect_type": 302 } }
Example response:
Example
Copy
Status: 200 OK
Example
Copy
{ "id": 3, "active": true, "regexp": false, "source": "/landing", "destination": "/products/hyperdrive/spring-sale", "redirect_type": 302, "complexity": 1009, "created_at": "2019-07-12T13:46:02.001Z", "updated_at": "2019-07-12T13:46:02.001Z", "url": "http://example.com/admin/api/redirect_rules/3" }
Parameters
active
- is the redirect rule considered on an incoming request?regexp
- issource
a regular expression pattern?source
- source path or a regular expression matching a path. If a full URI is provided, only the path portion is applied.destination
- destination path or full URI. Ifregexp
istrue
, backreferences fromsource
may be used ($1
,$2
, ...)redirect_type
- a HTTP code for the redirection response, one of301
,302
or307
.410
is also allowed, but does not result in a redirect.
Remove a redirect rule
Example
Copy
DELETE /admin/api/redirect_rules/3
This request deletes the redirect rule from the database.
Example request:
Example
Copy
DELETE http://example.com/admin/api/redirect_rules/3
Example response:
Example
Copy
Status: 204 No Content