Referans REST API
Konfigirasyon Baz
URL Baz: {site_url}/wp-json/wu/v2/
Otantifikasyon: Kle API ak Sekrè (HTTP Basic Auth oswa Paramèt URL)
Otantifikasyon
Aktive API
// Enable API in Ultimate Multisite settings or programmatically
wu_save_setting('enable_api', true);
Jwenn Idantifyan API
$api_key = wu_get_setting('api_key');
$api_secret = wu_get_setting('api_secret');
Metòd Otantifikasyon
HTTP Basic Auth (Rekòmande):
curl -u "api_key:api_secret" https://yoursite.com/wp-json/wu/v2/customers
Paramèt URL:
curl "https://yoursite.com/wp-json/wu/v2/customers?api_key=your_key&api_secret=your_secret"
Pwen Final Prensipal yo
1. API Kliyan
Wout Baz: /customers
Jwenn Tout Kliyan yo
GET /wu/v2/customers
Jwenn Yon Sèl Kliyan
GET /wu/v2/customers/{id}
Kreye Kliyan
POST /wu/v2/customers
Content-Type: application/json
{
"user_id": 123,
"email_verification": "verified",
"type": "customer",
"has_trialed": false,
"vip": false
}
Mete Kliyan Ajou
PUT /wu/v2/customers/{id}
Content-Type: application/json
{
"vip": true,
"extra_information": "VIP customer notes"
}
Efase Kliyan
DELETE /wu/v2/customers/{id}
2. API Sit yo
Wout Baz: /sites
Kreye Sit
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 Abònman yo
Wout Baz: /memberships
Kreye Abònman
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 Pwodwi yo
Wout Baz: /products
Jwenn Tout Pwodwi yo
GET /wu/v2/products
5. API Peman yo
Wout Baz: /payments
Kreye Peman
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 Domèn yo
Wout Baz: /domains
Mape Domèn
POST /wu/v2/domains
Content-Type: application/json
{
"domain": "custom-domain.com",
"customer_id": 5,
"primary_domain": 1,
"stage": "domain-mapping"
}
Pwen Final Enskripsyon
Pwen final /register la bay yon koule checkout/enskripsyon konplè:
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"
}
}
Repons:
{
"customer": { ... },
"membership": { ... },
"payment": { ... },
"site": { "id": 123 }
}
Pwen Final Lokatè Souvren yo
Ultimate Multisite: Multi-Tenancy 1.2.0 ajoute kouvèti REST pou lokatè souvren pou entegrasyon ki pwovizyone, enspekte, oswa verifye lokatè izole yo.
Chaj demann egzak la depann de kapasite host ki aktive a, men entegrasyon yo ta dwe atann gwoup pwen final sa yo:
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}
Sèvi ak pwen final bootstrap la pou prepare rejis lokatè a, baz done, sistèm fichye, ak eta routaj la. Sèvi ak pwen final estati migrasyon ak verifikasyon yo anvan ou chanje trafik pwodiksyon an. Sèvi ak pwen final efasman an pou demantèlman souvren pou yo retire idantifyan baz done yo atravè koule netwayaj modil siplemantè a.
Repons tipik pou estati migrasyon gen ladan:
{
"site_id": 123,
"isolation_model": "sovereign",
"database_host": "localhost",
"verification": {
"no_legacy": "passed",
"sovereign_push": "passed",
"tenant_users": "passed"
},
"ready": true
}
Trete ready: false kòm yon blokaj anvan lansman. Tcheke detay verifikasyon yo, korije atachman host baz done a, keu a, pwovizyon itilizatè a, oswa pwoblèm routaj la, epi eseye verifikasyon ankò.
Repons Erè
{
"code": "wu_rest_invalid_parameter",
"message": "Invalid parameter value",
"data": {
"status": 400,
"params": {
"email": "Invalid email format"
}
}
}
Pajinen ak Filtraj
Paramèt Rekèt:
GET /wu/v2/customers?per_page=20&page=2&search=john&status=active
Paramèt komen:
per_page- Atik pa paj (defo: 20, maksimòm: 100)page- Nimewo pajsearch- Tèm rechèchorderby- Chan triorder- Direksyon tri (asc/desc)status- Filtre pa estatidate_created- Filtre pa entèval dat