Skip to main content

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 акыркы чекити толук checkout/каттоо агымын камсыздайт:

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 камтуусун кошот.

Так сурам жүгү иштетилген хост мүмкүнчүлүгүнө жараша болот, бирок интеграциялар бул акыркы чекит топторун күтүшү керек:

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 маанисин ишке киргизүүгө чейинки бөгөт катары караңыз. Ырастоо чоо-жайын текшерип, маалымат базасынын хост байланышын, кезекти, колдонуучуну камсыздоону же багыттоо маселесин оңдоңуз, андан кийин ырастоону кайра аракет кылыңыз.

Ката жооптору

{
"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 - Дата диапазону боюнча чыпкалоо