ForHosting KIT · Developer Utilities

Seeded screen-free activity picker for kids by age

The seeded screen-free activity picker gives parents, caregivers, teachers, and group leaders a practical idea without sending children back to a device.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

Enter the youngest and oldest ages in the group, then supply any text as a seed. The picker filters its curated list to activities suitable for that complete age range and deterministically selects one result. Reuse the same ages and seed to receive the same suggestion, or change the seed when you want a different option.

Choose an age range that represents everyone

Enter the age of the youngest participant as min_age and the age of the oldest as max_age. For one child, use the same age in both fields. For siblings, a classroom table, or a mixed-age play group, include every participating child within the range. The picker does not merely check whether an activity overlaps the ages. It requires the curated suitability band to cover the complete requested range. That conservative rule prevents a suggestion designed for an older child from being presented as suitable simply because one participant fits. It also means that a very broad range may produce an error when no single listed activity is appropriate for everyone. In that case, narrow the range, split participants into smaller age groups, or plan separate activities. Ages are expressed in completed years from zero through seventeen, and the youngest age cannot exceed the oldest. Adult supervision, local conditions, individual development, allergies, mobility, and the safety of available materials still require a caregiver's judgment; the age filter is a planning aid, not a safety certification.

Use the seed to make the choice repeatable

The seed is any non-empty text label, such as a date written by you, a family nickname, a lesson name, or “rainy-saturday.” It is not randomness and it is not sent to a network service. The algorithm combines the exact seed with both age endpoints, hashes that text using fixed arithmetic, and maps the result into the filtered activity list. Therefore, identical input always gives identical output across repeated calls. This is useful when a teacher wants every copy of a weekly plan to contain the same choice, when co-parents need a shared result, or when an automated schedule must remain stable after a retry. Capitalization, spaces, punctuation, and leading or trailing spaces are part of the seed, so “Friday” and “friday” may select different activities. Keep a seed unchanged when reproducibility matters. Change it deliberately when you want another eligible suggestion. The response echoes the seed and requested range, making the choice easy to record and verify later without relying on hidden state.

Turn the suggestion into a workable plan

Each result includes a short title, practical instructions, an indoor or outdoor setting, the activity's supported ages, and the number of curated activities that matched. Use those fields as a starting point rather than a rigid script. Check the setting against weather and space, gather safe substitutes for any unavailable materials, decide how long the session should run, and adjust complexity to the children you know. A paper bridge can become a quick folding challenge for younger participants or a measured engineering experiment for older ones. A nature collage can focus on colors, classification, storytelling, or composition. The stable activity identifier is useful for preventing immediate repeats in your own application, while the matching count reveals how constrained the requested range was. If the endpoint reports that nothing covers the entire range, it intentionally provides no fallback that might be unsuitable. The browser version is free, while an API request costs $0.002. Neither route uses live recommendations, personal profiles, advertisements, or engagement tracking; the choice comes only from the fixed curated list, ages, and seed.

Plan a reliable family activity

Use a shared seed so caregivers in different places get the same age-appropriate idea for the children.

Fill a classroom transition

Pick a reproducible offline task for a small age group and include it in a lesson or substitute-teacher plan.

Power a screen-free calendar

Generate stable daily suggestions in an application by deriving a seed from your own calendar labels.

Will the same input always return the same activity?

Yes. The algorithm uses only the exact age range, seed, and fixed curated list, with no randomness, date, network call, or stored state.

What should I enter for one child?

Set min_age and max_age to the child's age in completed years. For example, use 8 and 8 for an eight-year-old.

Why did a broad age range return an error?

An activity must cover every age in the requested range. The endpoint refuses to offer a partial match when no curated suggestion is suitable for the complete group.

Does age matching guarantee an activity is safe for my child?

No. A caregiver must still consider supervision, development, mobility, allergies, materials, surroundings, and local safety guidance.

How can I get a different suggestion?

Change the seed while keeping the ages fixed. Different seeds can map to different activities among those that cover the range.

How much does an API request cost?

Each API request costs $0.002. The browser tool can run the same deterministic logic for free.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/parent/screen-free-activity-pick-seeded

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/parent/screen-free-activity-pick-seeded \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"min_age":6,"max_age":8,"seed":"rainy-saturday"}'
{
  "min_age": 6,
  "max_age": 8,
  "seed": "rainy-saturday"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "parent.screen_free_activity_pick_seeded",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Read the full KIT documentation →