---
title: "Submit Session Photos"
method: POST
path: "/exercise-sessions/{session_id}/photo-submission"
tags: ["photo_submissions"]
---

# Submit Session Photos

`POST /exercise-sessions/{session_id}/photo-submission`

## Request

- Base URL: `https://api.excellence-ai.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.excellence-ai.com/exercise-sessions/{session_id}/photo-submission`
- Auth: OAuth 2 (password, token URL `api/login`)

## Path parameters

- `session_id` string, required

## Request body

- SessionPhotoSubmissionCreate: Session-level "je rends tout" submission: photos are dispatched across the session's exercises before per-exercise grading.
  - `photo_urls` string[], required
  - `include_transcription` boolean
  - `device_type` string, nullable

## Response `200`

Successful Response

- SessionPhotoSubmissionResponse: One entry per session exercise, in session order — including exercises no photo was mapped to (`attempt_index` null, empty `photo_indices`).
  - `results` PhotoDispatchResultResponse[], required
    - `exercise_id` string, required
    - `photo_indices` integer[], required
    - `attempt_index` integer, nullable, required
    - `error` string, nullable, required
    - `rejection_kind` 'attempts_exhausted' | 'overdue', nullable

## Other responses

- `400`: Malformed identifier
- `403`: Not authorized for this resource
- `404`: Resource not found
- `409`: Business rule violated
- `422`: Validation Error

## Changes

> 55 revisions in range; 1 not diffed.

- **2026-10-21** `1d6009058248`: 1 info
  - added the optional property `results/items/rejection_kind` to the response with the `200` status

[Operation history](https://skmtc.dev/excellence-ai/apis/excellence-learning/changes/exercise-sessions/:session_id/photo-submission/post.md)

---

[API](https://skmtc.dev/excellence-ai/apis/excellence-learning.md) - [All operations](https://skmtc.dev/excellence-ai/apis/excellence-learning/llms.txt) - [OpenAPI document](https://skmtc.dev/excellence-ai/apis/excellence-learning/revisions/379e4a57dee8?raw)
