# Signer avataropplasting

Kanonisk URL: https://sosoapi.ai/nb/docs/mcp/sign-avatar-upload

`sosoapi_sign_avatar_upload`

Hent en signert URL for å laste opp et nytt avatarbilde for den innloggede brukeren (filename og content_type kreves). Endrer ikke profilen i seg selv.

## Profiler og transporter

Profiler: full

Transporter: stdio, http

Velg core eller full for å kontrollere hvilke verktøy klienten ser; dette endrer ikke tillatelsene. Lokal filopplasting krever stdio og er utilgjengelig over HTTP. Angi SOSOAPI_OUTPUT_SCHEMAS=1 for å inkludere utdataskjemaer i oppdagelsen. Verktøy returnerer strukturerte resultater med eller uten den innstillingen.

## Tillatelser og sideeffekter

Merknader hjelper klienter med å beskrive et verktøy. Hvert kall kontrollerer fortsatt brukerens autentisering, rolle, ressurstilgang og funksjonstillatelser.

```json
{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": false,
  "openWorldHint": false
}
```

`/identity-api/user/profile/sign-avatar-url` — agent:operate; synchronous_http_response

## Inndatafelter

```json
{
  "type": "object",
  "properties": {
    "filename": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "content_type": {
      "type": "string",
      "pattern": "^image\\/(png|jpeg|jpg|gif|webp)$"
    },
    "byte_size": {
      "description": "Exact avatar size in bytes (max 5 MiB); signed into the upload URL",
      "type": "integer",
      "minimum": 1,
      "maximum": 5242880
    }
  },
  "required": [
    "filename",
    "content_type"
  ],
  "additionalProperties": false
}
```

## Strukturert utdata

Dette skjemaet beskriver structuredContent i et vellykket verktøyresultat. MCP-svaret inkluderer også content og kan sette isError når et kall mislykkes. Ved publisering, les innleggets endelige resultat i stedet for å regne en akseptert forespørsel eller et tekstsvar som bekreftelse. Den lenkede API-operasjonen forklarer tillatelser og regler for nye forsøk.

```json
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "const": "sign-avatar-url"
    },
    "path": {
      "type": "string"
    },
    "signed_url": {
      "type": "string",
      "format": "uri"
    },
    "token": {
      "type": "string"
    }
  },
  "required": [
    "action",
    "path",
    "signed_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
```

## Eksempel på verktøykall

Disse eksemplene bruker fiktive verdier kontrollert mot skjemaene. Erstatt ID-ene med noen du har lov til å bruke, mediene med klare ressurser og datoene med bekreftet publiseringstidspunkt. Kontroller kontoens kvalifikasjon før en skriveoperasjon sendes inn. Siden sender ingen API-forespørsler.

```json
{
  "name": "sosoapi_sign_avatar_upload",
  "arguments": {
    "filename": "example.png",
    "content_type": "image/png"
  }
}
```

structuredContent

```json
{
  "action": "sign-avatar-url",
  "path": "example",
  "signed_url": "https://example.com/media.png"
}
```

## Underliggende API-operasjoner

- [/identity-api/user/profile/sign-avatar-url](https://sosoapi.ai/nb/docs/api/identity-api-user-profile-sign-avatar-url)
