La Oficina Nítida supports per-tenant branding so that each organization presents its own identity throughout the platform and in generated documents. Admins can upload a company logo, upload a digitized signature of the legal representative, and record the representative’s name — all of which become available as template variables when generating contracts and certificates.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Glemynart/SaaS/llms.txt
Use this file to discover all available pages before exploring further.
What Branding Controls
The branding module manages three identity assets stored on your tenant record:| Asset | Field on Tenant | Template variable |
|---|---|---|
| Company logo | logoUrl | {{LOGO_EMPRESA}} |
| Legal representative name | representanteLegal | {{REPRESENTANTE_LEGAL}} |
| Representative’s signature image | firmaRepresentanteUrl | {{FIRMA_REPRESENTANTE}} |
DocumentTemplate and GeneratedDocument contexts, meaning they are automatically injected into contracts and certificates at generation time.
Endpoints
All branding endpoints require a valid JWT. TheGET endpoint is available to all authenticated roles. PATCH and upload endpoints are restricted to ADMIN.
Retrieve current branding
Update branding fields
| Field | Type | Description |
|---|---|---|
representanteLegal | String? | Full name of the organization’s legal representative |
Upload a company logo
file field. The uploaded logo is stored in Cloudflare R2 and the resulting URL is saved to Tenant.logoUrl.
Upload a representative signature
file field. The uploaded signature image is stored in Cloudflare R2 and the resulting URL is saved to Tenant.firmaRepresentanteUrl.
Supported File Types and Limits
Both upload endpoints (upload-logo and upload-firma) enforce the same file constraints:
| Constraint | Value |
|---|---|
| Accepted formats | PNG, JPEG / JPG, WebP, SVG |
| Maximum file size | 5 MB |
400 Bad Request before any storage operation is attempted. The server validates the MIME type reported by the client; sending a file with a mismatched extension is not sufficient to bypass this check.
Example: Uploading a Logo via cURL
logoUrl.
Example: Uploading a Signature via cURL
Branding is fully isolated per tenant. Uploading a logo or updating the representative’s name on your account has no effect on any other organization on the platform. Each tenant maintains its own independent set of branding assets.