---
title: "POST /api/ai-studio/sessions/{sessionId}/generate"
method: POST
path: "/api/ai-studio/sessions/{sessionId}/generate"
tags: ["AiStudioSessions"]
---

# POST /api/ai-studio/sessions/{sessionId}/generate

`POST /api/ai-studio/sessions/{sessionId}/generate`

## Request

- Base URL: `https://api.wearelearning.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.wearelearning.io/api/ai-studio/sessions/{sessionId}/generate`
- Auth: OAuth 2
  - Implicit: `https://login.wearelearning.io/authorize?audience=https://api.wearelearning.io`

## Path parameters

- `sessionId` string, uuid, required: A valid GUID

## Request body

- GenerateAvatarVideoRequest
  - `sourceTab` 'Image' | 'Scene'

## Response `200`

OK

- AiStudioSessionDto
  - `id` string, uuid, required: A valid GUID
  - `tenantId` string, required
  - `title` string, nullable
  - `createdById` string, required
  - `type` 'PresenterVideo' | 'Image', required
  - `status` 'Draft' | 'Generating' | 'Completed' | 'Failed' | 'Cancelled' | 'Reopened', required
  - `input` AiStudioSessionInputDto, required
    - `text` string, nullable
    - `imageBlobUrl` string, nullable
    - `audioBlobUrl` string, nullable
    - `audioDurationSeconds` number, double, nullable
    - `audioSource` 'None' | 'TextToSpeech' | 'UserProvided', required
    - `backgroundBlobUrl` string, nullable
    - `prompt` string, nullable
    - `settings` AiStudioSessionSettings, required
      - `resolution` string, required
      - `provider` string, nullable
    - `voiceShortName` string, nullable
    - `locale` string, nullable
    - `sourceTab` 'Image' | 'Scene'
    - `sceneId` string, nullable
    - `characters` AiStudioSessionCharacterDto[], required
      - `characterId` string, required
      - `position` ThreeDimensionalPositionDto
        - `x` number, double, required
        - `y` number, double, required
        - `z` number, double, required
      - `lookAt` ThreeDimensionalPositionDto
        - `x` number, double, required
        - `y` number, double, required
        - `z` number, double, required
      - `rotation` number, float, required
    - `image` AiStudioImageGenerationDto
      - `purpose` 'Image' | 'SceneBackground', required
      - `style` 'WeAre' | 'None', required
      - `transparentBackground` boolean, required
      - `turns` AiStudioImageTurnDto[], required
        - `id` string, uuid, required: A valid GUID
        - `prompt` string, required
        - `referenceImageBlobUrl` string, nullable
        - `referenceImageBlobUrls` string[], required
        - `referenceTurnId` string, uuid, nullable: A valid GUID
        - `style` 'WeAre' | 'None', required
        - `transparentBackground` boolean, required
        - `resolution` string, required
        - `status` 'Generating' | 'Completed' | 'Failed', required
        - `outputImageBlobUrl` string, nullable
        - `mediaReferenceId` string, uuid, nullable: A valid GUID
        - `errorCode` string, nullable
        - `createdAt` string, date-time, required
        - `completedAt` string, date-time, nullable
    - `originalScript` AiStudioScriptOriginalDto
      - `text` string, required
      - `locale` string, nullable
      - `voiceShortName` string, required
  - `output` AiStudioSessionOutputDto, required
    - `videoBlobUrl` string, nullable
    - `mediaReferenceId` string, uuid, nullable: A valid GUID
    - `imageBlobUrl` string, nullable
    - `videoStreamUrl` string, nullable
  - `errorMessage` string, nullable
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `folderId` string, uuid, nullable: A valid GUID

---

[API](https://skmtc.dev/wearelearning/apis/we-are-learning-api.md) - [All operations](https://skmtc.dev/wearelearning/apis/we-are-learning-api/llms.txt) - [OpenAPI document](https://skmtc.dev/wearelearning/apis/we-are-learning-api/revisions/e2ca5265db77?raw)
