Generate tests from app

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Has Base44 read the app's code and builder conversation, write up to 5 tests for its main features, and save them. The response lists the saved tests. Start them with Run test.

This makes AI calls and costs credits for the tests it saves. It runs while you wait, usually for 30 seconds to a minute. The call is refused when the workspace is out of credits.

The app needs room for 5 more tests, so it can have at most 245 when you call this. An app with no pages or entities yet gets no tests and no charge, with no_changes set to true.

Each call adds new tests, even when similar ones exist. To get ideas that avoid the tests you have, use Suggest new tests. This call also saves a generation checkpoint, as Save test generation checkpoint does.

This is limited to 20 requests per minute per caller for each app. Some workspaces have a different limit.

<Note>This endpoint accepts a personal API key belonging to a user with editor access to the app. Read-only keys and workspace API keys are refused.</Note>

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time.</Warning>

post/api/apps/{app_id}/testing-agent/flows/generate-from-app-context

Path parameters

app_idstring required

ID of the app.

ID of the app.

Response

The tests Base44 saved.

no_changesboolean required

true when the app has no pages or entities yet, so nothing was generated or charged.

Example response

{
  "flows": [
    {
      "app_id": "6820f3a4e7b91d003c45a1f2",
      "created_date": "2026-09-28T10:15:00+00:00",
      "goal": "Sign up, create a project called Launch, and check that it appears on the dashboard.",
      "id": "68a1c2e4f0b3d9001a7e5c21",
      "name": "Create a project",
      "revision": 1,
      "source": "app_context",
      "updated_date": "2026-09-28T10:15:00+00:00"
    }
  ]
}

Changes

Changed in 1 of the 39 revisions of this API.1