Two Minute Reports Logo
Teams

Upload team logo

Upload the logo shown for a team across Two Minute Reports.
POST /teams/{teamId}/logo

Sets the team's logo. It appears wherever the team itself is shown — the team switcher, the top bar, and the settings page. Uploading again replaces the previous logo; the old file is removed.

Authentication: Bearer token · Permission:teams:write · Team permission:team_settings.write · Rate limit: default (120 / 60s)
This is not the logo your clients see. A client's dashboard carries that client's own logo, set per client. The team logo is internal branding and never appears on client-facing output.

Path parameters

teamId
string · uuid v7 required
The ID of the team whose logo is being set.

Request body

Sent as multipart/form-data.

file
file required
The image. PNG, JPEG or WebP, up to 5 MB.
GIF and SVG are refused. An animated logo sits in the top bar on every page, and SVG is an XML document that can carry script. The format is decided from the file's leading bytes, not its name or declared content type — renaming a GIF to .png does not get it through.

Request

curl -X POST https://api.twominutereports.com/v1/teams/0190f8b0-1a2b-7c3d-8e4f-5a6b7c8d9e0f/logo \
  -H "Authorization: Bearer tmrc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -F "[email protected]"

Response

{
  "success": true,
  "data": {
    "logoUrl": "https://cdn.twominutereports.com/tmr/team_logo/0190f8b0-1a2b-7c3d-8e4f-5a6b7c8d9e0f-9f2c4b7e1a3d5c8f.png"
  }
}

Fields

logoUrl
string
The URL of the newly stored logo. It also appears on the team object returned by Get team and List teams.
Copyright © 2026