Skip to main content

Ntụaka REST API

Nhazi Ntọala​

URL Ntọala: {site_url}/wp-json/wu/v2/ Nyocha njirimara: Igodo API & Nzuzo (HTTP Basic Auth ma ọ bụ Paramita URL)

Nyocha njirimara​

Kwado API​

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

Nweta Nkọwa Njirimara API​

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

Ụzọ Nyocha Njirimara​

HTTP Basic Auth (Akwadoro):

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

Paramita URL:

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

Endpoint Ndị Isi​

1. API Ndị Ahịa​

Ụzọ Ntọala: /customers

Nweta Ndị Ahịa Niile

GET /wu/v2/customers

Nweta Otu Onye Ahịa

GET /wu/v2/customers/{id}

Mepụta Onye Ahịa

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

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

Melite Onye Ahịa

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

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

Hichapụ Onye Ahịa

DELETE /wu/v2/customers/{id}

2. API Saịtị​

Ụzọ Ntọala: /sites

Mepụta Saịtị

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 Ndị Otu**​

Ụzọ Ntọala: /memberships

Mepụta Otu

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 Ngwaahịa​

Ụzọ Ntọala: /products

Nweta Ngwaahịa Niile

GET /wu/v2/products

5. API Ịkwụ Ụgwọ​

Ụzọ Ntọala: /payments

Mepụta Ịkwụ Ụgwọ

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 Domen​

Ụzọ Ntọala: /domains

Jikọọ Domen

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

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

Endpoint Ndebanye Aha​

Endpoint /register na-enye usoro checkout/ndebanye aha zuru ezu:

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

Nzaghachi:

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

Endpoint Ndị Tenant Nwere Ọchịchị Onwe Ha​

Ultimate Multisite: Multi-Tenancy 1.2.0 na-agbakwunye mkpuchi REST maka tenant nwere ọchịchị onwe ha maka njikọ ndị na-enye, na-enyocha, ma ọ bụ na-akwado tenant ndị e kewapụrụ iche.

Payload arịrịọ ziri ezi dabere na ikike host e kwadoro, mana njikọ kwesịrị ịtụ anya otu endpoint ndị a:

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}

Jiri endpoint bootstrap kwadebe ndekọ tenant, database, filesystem, na ọnọdụ ntụgharị ụzọ. Jiri endpoint ọnọdụ mbufe na nkwenye tupu ịgbanwee okporo ụzọ mmepụta. Jiri endpoint nhichapụ maka iwepụ sovereign ka ewepụ credentials database site n’usoro nhicha addon.

Nzaghachi ọnọdụ mbufe a na-ahụkarị gụnyere:

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

Were ready: false dị ka ihe mgbochi tupu mmalite. Lelee nkọwa nkwenye, dozie njikọ host database, queue, inye onye ọrụ, ma ọ bụ nsogbu ntụgharị ụzọ, mgbe ahụ nwaa nkwenye ọzọ.

Nzaghachi Mperi​

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

Nkewa Peeji na Nzacha​

Paramita Ajụjụ:

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

Paramita ndị a na-ejikarị:

  • per_page - Ihe n’otu peeji (ndabara: 20, kacha: 100)
  • page - Nọmba peeji
  • search - Okwu ọchụchọ
  • orderby - Field nhazi
  • order - Ntuziaka nhazi (asc/desc)
  • status - Zacha site na status
  • date_created - Zacha site na oke ụbọchị