Skip to main content

REST API atsauce

Pamata konfigurācija

Pamata URL: {site_url}/wp-json/wu/v2/ Autentifikācija: API atslēga un noslēpums (HTTP Basic Auth vai URL parametri)

Autentifikācija

Iespējot API

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

Iegūt API akreditācijas datus

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

Autentifikācijas metodes

HTTP Basic Auth (ieteicams):

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

URL parametri:

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

Galvenie galapunkti

1. Klientu API

Pamata maršruts: /customers

Iegūt visus klientus

GET /wu/v2/customers

Iegūt vienu klientu

GET /wu/v2/customers/{id}

Izveidot klientu

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

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

Atjaunināt klientu

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

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

Dzēst klientu

DELETE /wu/v2/customers/{id}

2. Vietņu API

Pamata maršruts: /sites

Izveidot vietni

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. Dalību API

Pamata maršruts: /memberships

Izveidot dalību

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. Produktu API

Pamata maršruts: /products

Iegūt visus produktus

GET /wu/v2/products

5. Maksājumu API

Pamata maršruts: /payments

Izveidot maksājumu

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. Domēnu API

Pamata maršruts: /domains

Kartēt domēnu

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

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

Reģistrācijas galapunkts

Galapunkts /register nodrošina pilnu checkout/reģistrācijas plūsmu:

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"
}
}

Atbilde:

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

Suverēno tenantu galapunkti

Ultimate Multisite: Multi-Tenancy 1.2.0 pievieno suverēno tenantu REST pārklājumu integrācijām, kas izveido, pārbauda vai verificē izolētus tenantus.

Precīza pieprasījuma slodze ir atkarīga no iespējotās resursdatora iespējas, bet integrācijām jārēķinās ar šādām galapunktu grupām:

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}

Izmantojiet bootstrap galapunktu, lai sagatavotu tenantu reģistru, datubāzi, failu sistēmu un maršrutēšanas stāvokli. Izmantojiet migrācijas statusa un verifikācijas galapunktus pirms ražošanas datplūsmas pārslēgšanas. Izmantojiet dzēšanas galapunktu suverēnai noņemšanai, lai datubāzes akreditācijas dati tiktu noņemti, izmantojot papildinājuma tīrīšanas plūsmu.

Tipiskas migrācijas statusa atbildes ietver:

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

Uztveriet ready: false kā pirms palaišanas bloķētāju. Pārbaudiet verifikācijas informāciju, izlabojiet datubāzes resursdatora piesaisti, rindu, lietotāju nodrošināšanu vai maršrutēšanas problēmu, pēc tam atkārtojiet verifikāciju.

Kļūdu atbildes

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

Lapošana un filtrēšana

Vaicājuma parametri:

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

Biežākie parametri:

  • per_page - Vienumi lapā (noklusējums: 20, maks.: 100)
  • page - Lapas numurs
  • search - Meklēšanas termins
  • orderby - Kārtošanas lauks
  • order - Kārtošanas virziens (asc/desc)
  • status - Filtrēt pēc statusa
  • date_created - Filtrēt pēc datumu diapazona