> For the complete documentation index, see [llms.txt](https://docs.meeco.me/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.meeco.me/openapi-docs/svx-api/assets.md).

# Assets

## Upload image asset

> Upload an image asset for use in wallet and issuer display contexts.\
> \
> The request must be sent as \`multipart/form-data\` with a \`file\` part.<br>

```json
{"openapi":"3.1.0","info":{"title":"SVX Wallet API","version":"4.0.1"},"servers":[{"url":"https://zyfla-wallet-sandbox.meeco.cloud","description":"SVX Wallet deployment (relative)"}],"security":[{},{"bearerAuth":[]},{"mutualTLS":[]}],"components":{"securitySchemes":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http"},"mutualTLS":{"type":"mutualTLS"}},"schemas":{"ImageAssetResponseDto":{"type":"object","properties":{"asset":{"$ref":"#/components/schemas/ImageAssetDto"}},"required":["asset"]},"ImageAssetDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string"},"content_type":{"type":"string","enum":["image/png","image/jpeg","image/webp"]},"size_bytes":{"type":"integer"}},"required":["id","url","content_type","size_bytes"]},"ImageAssetErrorResponse":{"type":"object","properties":{"error":{"type":"string","enum":["image_asset_file_required","image_asset_file_too_large","image_asset_unsupported_content_type","image_asset_invalid_image_data","image_asset_virus_scan_failed"]},"message":{"type":"string","description":"User friendly error message"},"extra_info":{"type":"object","description":"Object that may contain more information about the error"}},"required":["error","message","extra_info"]}}},"paths":{"/assets/images":{"post":{"summary":"Upload image asset","description":"Upload an image asset for use in wallet and issuer display contexts.\n\nThe request must be sent as `multipart/form-data` with a `file` part.\n","operationId":"AssetsController_createImage","parameters":[],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"201":{"description":"Image asset uploaded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageAssetResponseDto"}}}},"400":{"description":"Missing file, unsupported declared MIME type, invalid image bytes, or virus scan failure","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageAssetErrorResponse"}}}},"413":{"description":"Image upload file exceeds the configured size limit","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageAssetErrorResponse"}}}}},"tags":["Assets"]}}}}
```

## Get image asset

> Retrieve image asset bytes by ID.\
> \
> The response content type depends on the stored image format.<br>

```json
{"openapi":"3.1.0","info":{"title":"SVX Wallet API","version":"4.0.1"},"servers":[{"url":"https://zyfla-wallet-sandbox.meeco.cloud","description":"SVX Wallet deployment (relative)"}],"security":[{},{"bearerAuth":[]},{"mutualTLS":[]}],"components":{"securitySchemes":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http"},"mutualTLS":{"type":"mutualTLS"}},"schemas":{"InvalidPathParamError":{"properties":{"error":{"description":"Unique error identifier","enum":["invalid_path_param"],"type":"string"},"extra_info":{"description":"Object that may contain more information about the error","type":"object"},"message":{"description":"User friendly error message","type":"string"}},"required":["error","message","extra_info"],"type":"object"},"ImageAssetNotFoundError":{"type":"object","properties":{"error":{"type":"string","enum":["image_asset_not_found"],"description":"Unique error identifier"},"message":{"type":"string","description":"User friendly error message"},"extra_info":{"type":"object","description":"Object that may contain more information about the error"}},"required":["error","message","extra_info"]}}},"paths":{"/assets/images/{id}":{"get":{"summary":"Get image asset","description":"Retrieve image asset bytes by ID.\n\nThe response content type depends on the stored image format.\n","operationId":"AssetsController_getImage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Image asset bytes","content":{"image/png":{"schema":{"type":"string","format":"binary"}},"image/jpeg":{"schema":{"type":"string","format":"binary"}},"image/webp":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid path param","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvalidPathParamError"}}}},"404":{"description":"Image asset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageAssetNotFoundError"}}}}},"tags":["Assets"]}}}}
```
