Child Services — Mobile Quickstart
Date: 2026-09-24 · Full details: service-children-mobile-handoff.md
What changed
A service can now contain other services. Tapping one may open a list of services instead of a list of stores.
The only rule
When the user opens a service, call:
GET /api/v2/client/system-categories/{id}/children?language=en-GB
Endpoint:
GET /api/v2/client/system-categories/{id}/children— OpenAPI operationClientSystemCategoriesController_getChildServicesByServiceIdinopenapi/order-v2-client.json.
Then:
| Response | What to show |
|---|---|
data has items | The child services, using your existing home-screen cell |
data is [] | The store screen, exactly as today |
404 | The service does not exist — your usual not-found handling |
There is no flag to check first. Always call, then branch on whether data is empty.
Response
{
"data": [
{
"id": 2465,
"title": "العناية بالطفل",
"titleTranslated": "Baby Care",
"image": "https://…/9a84f018.png",
"thumbnail": "https://…/9a84f018.png",
"url": "",
"background_image_url": "",
"serviceType": "default",
"status": "active",
"ordering": 61
}
]
}
An item here has exactly the same fields as an item in the home services list. Reuse the same model and the same cell — no new parsing, no new UI.
There is no metadata block: the list is short and never paginated. Items come back in display order.
What else changed
Child services no longer appear in the home services list. Nothing was renamed or removed from the list or the detail endpoint — the only difference is that the detail endpoint now also returns image and thumbnail, which it should have returned all along.
language works the same as everywhere else: en-GB serves English artwork when it exists, anything else serves Arabic.
Test data on dev
| id | Name | Role |
|---|---|---|
| 2464 | Family & Kids | parent — open this one |
| 2465 | Baby Care | child |
| 2466 | Toys | child |
| 2467 | Kids Fashion | child |
| 2468 | Baby Essentials | child |
The endpoint is not deployed to dev yet. Until it is, /children returns 404 there and the four child services still show up in the dev home list. Use the sample payloads shared alongside this document to build against, and re-point at dev once the deploy lands.
Please don't
- Don't try to guess the hierarchy from any field — none is returned.
- Don't cache a children list across sessions. An admin can change it at any time, and the server already caches it for 30 seconds.
- Don't assume a service that returns children today will return them tomorrow, or the other way round.