REST API پايدىلانمىسى
ئاساسىي سەپلىمە
ئاساسىي URL: {site_url}/wp-json/wu/v2/
دەلىللەش: API ئاچقۇچى ۋە مەخپىي كود (HTTP Basic Auth ياكى URL پارامېتىرلىرى)
دەلىللەش
API نى قوزغىتىش
// Enable API in Ultimate Multisite settings or programmatically
wu_save_setting('enable_api', true);
API كىنىشكىلىرىنى ئېلىش
$api_key = wu_get_setting('api_key');
$api_secret = wu_get_setting('api_secret');
دەلىللەش ئۇسۇللىرى
HTTP Basic Auth (تەۋسىيە قىلىنىدۇ):
curl -u "api_key:api_secret" https://yoursite.com/wp-json/wu/v2/customers
URL پارامېتىرلىرى:
curl "https://yoursite.com/wp-json/wu/v2/customers?api_key=your_key&api_secret=your_secret"
يادرولۇق ئاخىرقى نۇقتىلار
1. خېرىدارلار API
ئاساسىي يول: /customers
بارلىق خېرىدارلارنى ئېلىش
GET /wu/v2/customers
يەككە خېرىدارنى ئېلىش
GET /wu/v2/customers/{id}
خېرىدار قۇ رۇش
POST /wu/v2/customers
Content-Type: application/json
{
"user_id": 123,
"email_verification": "verified",
"type": "customer",
"has_trialed": false,
"vip": false
}
خېرىدارنى يېڭىلاش
PUT /wu/v2/customers/{id}
Content-Type: application/json
{
"vip": true,
"extra_information": "VIP customer notes"
}
خېرىدارنى ئۆچۈرۈش
DELETE /wu/v2/customers/{id}
2. تور بېكەتلەر API
ئاساسىي يول: /sites
تور بېكەت قۇرۇش
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
ئاساسىي يول: /memberships
ئەزالىق قۇرۇش
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
ئاساسىي يول: /products
بارلىق مەھسۇلاتلارنى ئېلىش
GET /wu/v2/products
5. چىقىملار API
ئاساسىي يول: /payments
چىقىم قۇرۇش
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
ئاساسىي يول: /domains
دائىرە نامىنى باغلاش
POST /wu/v2/domains
Content-Type: application/json
{
"domain": "custom-domain.com",
"customer_id": 5,
"primary_domain": 1,
"stage": "domain-mapping"
}
تىزىملىتىش ئاخىرقى نۇقتىسى
/register ئاخىرقى نۇقتىسى تولۇق چىقىم قىلىش/تىزىملىتىش ئېقىمىنى تەمىنلەيدۇ:
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"
}
}
جاۋاب:
{
"customer": { ... },
"membership": { ... },
"payment": { ... },
"site": { "id": 123 }
}
مۇستەقىل ئىجارىدار ئاخىرقى نۇقتىلىرى
Ultimate Multisite: Multi-Tenancy 1.2.0 ئايرىم ئىجارىدارلارنى تەمىنلەيدىغان، تەكشۈرىدىغان ياكى دەلىللەيدىغان بىرلەشتۈرۈشلەر ئۈچۈن مۇستەقىل ئىجارىدار REST قاپلىمىسىنى قوشىدۇ.
ئېنىق تەلەپ يۈكى قوزغىتىلغان host ئىقتىدارىغا باغلىق، لېكىن بىرلەشتۈرۈشلەر تۆۋەندىكى ئاخىرقى نۇقتا گۇرۇپپىلىرىنى كۈتۈشى كېرەك:
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}
bootstrap ئاخىرقى نۇقتىسىنى ئىشلىتىپ ئىجارىدار تىزىملىكى، سانلىق مەلۇمات ئامبىرى، ھۆججەت سىستېمىسى ۋە يوللاش ھالىتىنى تەييارلاڭ. ئىشلەپچىقىرىش ئېقىمىنى ئالماشتۇرۇشتىن بۇرۇن كۆچۈرۈش ھالىتى ۋە دەلىللەش ئاخىرقى نۇقتىلىرىنى ئىشلىتىڭ. مۇستەقىل تازىلاش ئۈچۈن ئۆچۈرۈش ئاخىرقى نۇقتىسىنى ئىشلىتىڭ، شۇنداقتا سانلىق مەلۇمات ئامبىرى كىنىشكىلىرى addon تازىلاش ئېقىمى ئارقىلىق چىقىرىۋېتىلىدۇ.
تىپىك كۆچۈرۈش ھالىتى جاۋابلىرى تۆۋەندىكىلەرنى ئۆز ئىچىگە ئالىدۇ:
{
"site_id": 123,
"isolation_model": "sovereign",
"database_host": "localhost",
"verification": {
"no_legacy": "passed",
"sovereign_push": "passed",
"tenant_users": "passed"
},
"ready": true
}
ready: false نى ئېلان قىلىشتىن بۇرۇنقى توسالغۇ دەپ قاراڭ. دەلىللەش تەپسىلاتلىرىنى تەكشۈرۈڭ، سانلىق مەلۇمات ئامبىرى host باغلىنىشى، قاتار، ئىشلەتكۈچى تەمىنلەش ياكى يوللاش مەسىلىسىنى تۈزىتىڭ، ئاندىن دەلىللەشنى قايتا سىناڭ.
خاتالىق جاۋابلىرى
{
"code": "wu_rest_invalid_parameter",
"message": "Invalid parameter value",
"data": {
"status": 400,
"params": {
"email": "Invalid email format"
}
}
}
بەتلەش ۋە سۈزۈش
سۈرۈشتۈرۈش پارامېتىرلىرى:
GET /wu/v2/customers?per_page=20&page=2&search=john&status=active
ئورتاق پارامېتىرلار:
per_page- ھەر بەتتىكى تۈرلەر (كۆڭۈلدىكى: 20، ئەڭ كۆپ: 100)page- بەت نومۇرىsearch- ئىزدەش ئاتالغۇسىorderby- تەرتىپلەش بۆلىكىorder- تەرتىپلەش يۆنىلىشى (asc/desc)status- ھالەت بويىچە سۈزۈشdate_created- چېسلا دائىرىسى بويىچە سۈزۈش