---
title: "Upload team picture"
method: POST
path: "/teams/{teamId}/picture"
tags: ["teams"]
---

# Upload team picture

`POST /teams/{teamId}/picture`

## Request

- Base URL: `https://api.usecrouton.com`
- URL: `https://api.usecrouton.com/teams/{teamId}/picture`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
- TypeScript: <https://skmtc.dev/usecrouton/apis/crouton-api/docs/teams/:teamId/picture/post.ts> (a function with typed inputs; its response is checked against the schema)

Uploads a team picture as `multipart/form-data` with a single `file` field (webp, jpeg, png, or gif; max ~12 MiB). Soft client limit is 8 MiB. Auth matches edit team.

## Request body `multipart/form-data`

- object
  - `file` union, required
    - string
    - string
    - string
    - string

## Response `200`

The updated team.

## Other responses

- `400`: 400
- `401`: Missing, invalid, revoked, or expired API key.
- `403`: API key lacks the required resource or access level.
- `404`: Team not found
- `422`: 422

## Changes

- **2026-10-28** `809cbf38e25a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/usecrouton/apis/crouton-api/changes/teams/:teamId/picture/post.md)

---

[API](https://skmtc.dev/usecrouton/apis/crouton-api.md) - [All operations](https://skmtc.dev/usecrouton/apis/crouton-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usecrouton/apis/crouton-api/revisions/809cbf38e25a?raw)
