Skip to main content

Referència de l'API REST

Configuració base

URL base: {site_url}/wp-json/wu/v2/ Autenticació: clau i secret de l'API (HTTP Basic Auth o paràmetres d'URL)

Autenticació

Activa l'API

// Enable API in Ultimate Multisite settings or programmatically
wu_save_setting('enable_api', true);

Obté les credencials de l'API

$api_key = wu_get_setting('api_key');
$api_secret = wu_get_setting('api_secret');

Mètodes d'autenticació

HTTP Basic Auth (recomanat):

curl -u "api_key:api_secret" https://yoursite.com/wp-json/wu/v2/customers

Paràmetres d'URL:

curl "https://yoursite.com/wp-json/wu/v2/customers?api_key=your_key&api_secret=your_secret"

Punts d'accés principals

1. API de clients

Ruta base: /customers

Obtén tots els clients

GET /wu/v2/customers

Obtén un sol client

GET /wu/v2/customers/{id}

Crea un client

POST /wu/v2/customers
Content-Type: application/json

{
"user_id": 123,
"email_verification": "verified",
"type": "customer",
"has_trialed": false,
"vip": false
}

Actualitza un client

PUT /wu/v2/customers/{id}
Content-Type: application/json

{
"vip": true,
"extra_information": "VIP customer notes"
}

Suprimeix un client

DELETE /wu/v2/customers/{id}

2. API de llocs

Ruta base: /sites

Crea un lloc

POST /wu/v2/sites
Content-Type: application/json

{
"customer_id": 5,
"membership_id": 10,
"domain": "example.com",
"path": "/",
"title": "My New Site",
"template_id": 1,
"type": "customer_owned"
}

3. API de membresies

Ruta base: /memberships

Crea una membresia

POST /wu/v2/memberships
Content-Type: application/json

{
"customer_id": 5,
"plan_id": 3,
"status": "active",
"gateway": "stripe",
"gateway_subscription_id": "sub_1234567890",
"auto_renew": true
}

4. API de productes

Ruta base: /products

Obtén tots els productes

GET /wu/v2/products

5. API de pagaments

Ruta base: /payments

Crea un pagament

POST /wu/v2/payments
Content-Type: application/json

{
"customer_id": 5,
"membership_id": 10,
"status": "completed",
"gateway": "stripe",
"gateway_payment_id": "pi_1234567890",
"total": 29.99,
"currency": "USD"
}

6. API de dominis

Ruta base: /domains

Assigna un domini

POST /wu/v2/domains
Content-Type: application/json

{
"domain": "custom-domain.com",
"customer_id": 5,
"primary_domain": 1,
"stage": "domain-mapping"
}

Punt d'accés de registre

El punt d'accés /register proporciona un flux complet de pagament/registre:

POST /wu/v2/register
Content-Type: application/json

{
"customer": {
"username": "newuser",
"password": "securepass123",
"email": "[email protected]"
},
"products": ["basic-plan"],
"duration": 1,
"duration_unit": "month",
"auto_renew": true,
"site": {
"site_url": "mynewsite",
"site_title": "My New Site",
"template_id": 1
},
"payment": {
"status": "completed"
},
"membership": {
"status": "active"
}
}

Resposta:

{
"customer": { ... },
"membership": { ... },
"payment": { ... },
"site": { "id": 123 }
}

Punts d'accés d'inquilí sobirà

Ultimate Multisite: Multi-Tenancy 1.2.0 afegeix cobertura REST d'inquilí sobirà per a integracions que proveeixen, inspeccionen o verifiquen inquilins aïllats.

La càrrega útil exacta de la sol·licitud depèn de la capacitat d'amfitrió activada, però les integracions haurien d'esperar aquests grups de punts d'accés:

POST /wu/v2/tenants/{site_id}/bootstrap
GET /wu/v2/tenants/{site_id}/migration-status
POST /wu/v2/tenants/{site_id}/verify
DELETE /wu/v2/tenants/{site_id}

Utilitza el punt d'accés de bootstrap per preparar el registre d'inquilins, la base de dades, el sistema de fitxers i l'estat d'encaminament. Utilitza els punts d'accés d'estat de migració i verificació abans de canviar el trànsit de producció. Utilitza el punt d'accés de supressió per al desmuntatge sobirà perquè les credencials de la base de dades s'eliminin mitjançant el flux de neteja de l'addon.

Les respostes típiques d'estat de migració inclouen:

{
"site_id": 123,
"isolation_model": "sovereign",
"database_host": "localhost",
"verification": {
"no_legacy": "passed",
"sovereign_push": "passed",
"tenant_users": "passed"
},
"ready": true
}

Tracta ready: false com un bloquejador previ al llançament. Comprova els detalls de verificació, corregeix l'associació de l'amfitrió de la base de dades, la cua, el proveïment d'usuaris o el problema d'encaminament, i després torna a provar la verificació.

Respostes d'error

{
"code": "wu_rest_invalid_parameter",
"message": "Invalid parameter value",
"data": {
"status": 400,
"params": {
"email": "Invalid email format"
}
}
}

Paginació i filtratge

Paràmetres de consulta:

GET /wu/v2/customers?per_page=20&page=2&search=john&status=active

Paràmetres comuns:

  • per_page - Elements per pàgina (per defecte: 20, màx.: 100)
  • page - Número de pàgina
  • search - Terme de cerca
  • orderby - Camp d'ordenació
  • order - Direcció d'ordenació (asc/desc)
  • status - Filtra per estat
  • date_created - Filtra per interval de dates