{
  "openapi": "3.0.4",
  "info": {
    "title": "Configuration API",
    "description": "**Welcome to the Configuration API documentation.**\r\n\r\nYou can try out the API using **[Swagger](/configuration/demo/v10-0/docs/swagger)**.\r\n\r\nYou can find a detailed documentation by following **[this link](https://docs.egov4.ch/docs/9.1/category/configuration-api)**.\r\n\r\n# Current Configured Levels\r\n\r\nTo get the context regarding this section please follow [this link](https://docs.egov4.ch/docs/9.1/apis/configuration-api/features/responses#current-configured-levels).\r\n\r\n\r\n\r\n# Entity Keys\r\n\r\nTo get the context regarding this section please follow [this link](https://docs.egov4.ch/docs/9.1/apis/configuration-api/features/responses#entity-keys).\r\n\r\n| Entity Key | DTOs |  \n| :--------- | :--- |  \n| `colorPalette` | `UiColorPaletteDto` |  \n| `link` | `UiLinkDto` |  \n| `logo` | `UiLogoDto` |  \n| `socialNetwork` | `UiSocialNetworkDto` |  \n| `uiTemplate` | `UiTemplateDto` |  \n",
    "contact": {
      "name": "Artionet",
      "url": "https://www.artionet.ch/",
      "email": "support@artionet.com"
    },
    "version": "v10.0",
    "x-logo": {
      "url": "/configuration/demo/v10-0/Documentation/Images/logo_artionet.png",
      "backgroundColor": "#fafafa",
      "altText": "Artionet Logo"
    }
  },
  "servers": [
    {
      "url": "/configuration/demo/v10-0"
    }
  ],
  "paths": {
    "/ui-templates": {
      "get": {
        "tags": [
          "UiTemplates"
        ],
        "summary": "Get a list of UI Templates",
        "description": "Allows to retrieve a list of UI Templates according to certain criteria.",
        "operationId": "GetUiTemplates",
        "parameters": [
          {
            "name": "SenderIdentifier",
            "in": "query",
            "description": "Filters settings on the `SenderIdentifier` list field (CI match)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Limited",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Select",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "PageNumber",
            "in": "query",
            "description": "Page number (index, 1-based)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "PageSize",
            "in": "query",
            "description": "Number of items per page. Using value `-1` disable pagination and gives all results at once.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "OrderBy",
            "in": "query",
            "description": "Sorting option. Ascending is the default direction when omitted.\r\n\r\n**Usage :** `orderBy=[property] [asc,desc],[property] [asc,desc],...`\r\n\r\n**Example :** `orderBy=person.maritalstatus.name desc`",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "X-Pagination-Total-Count": {
                "description": "Total number of elements",
                "schema": {
                  "type": "integer",
                  "description": "Total number of elements",
                  "format": ""
                }
              },
              "X-Pagination-Page-Size": {
                "description": "Size of a page of element",
                "schema": {
                  "type": "integer",
                  "description": "Size of a page of element",
                  "format": ""
                }
              },
              "X-Pagination-Current-Page": {
                "description": "Index of the current page",
                "schema": {
                  "type": "integer",
                  "description": "Index of the current page",
                  "format": ""
                }
              },
              "X-Pagination-Total-Pages": {
                "description": "Total number of pages",
                "schema": {
                  "type": "integer",
                  "description": "Total number of pages",
                  "format": ""
                }
              },
              "X-Pagination-Next-Page-Link": {
                "description": "Link to the next page",
                "schema": {
                  "type": "string",
                  "description": "Link to the next page",
                  "format": ""
                }
              },
              "X-Pagination-Previous-Page-Link": {
                "description": "Link to the previous page",
                "schema": {
                  "type": "string",
                  "description": "Link to the previous page",
                  "format": ""
                }
              },
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UiTemplateDto"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "UiTemplates"
        ],
        "summary": "Add a new UI Template",
        "description": "Allows to create a new UI Template.",
        "operationId": "CreateUiTemplate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateUiTemplateCommand"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UiTemplateDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/ui-templates/{uiTemplateName}": {
      "get": {
        "tags": [
          "UiTemplates"
        ],
        "summary": "Get the specified UI Template",
        "description": "Allows to retrieve a specific UI Template identified by its `Name`.",
        "operationId": "GetUiTemplateByName",
        "parameters": [
          {
            "name": "uiTemplateName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UiTemplateDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "UiTemplates"
        ],
        "summary": "Update the specified UI Template",
        "description": "Allows to update an existing UI Template identified by its `Id`.",
        "operationId": "UpdateUiTemplate",
        "parameters": [
          {
            "name": "uiTemplateName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UpdateUiTemplateCommand"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UiTemplateDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "UiTemplates"
        ],
        "summary": "Delete the specified UI Template",
        "description": "Allows to delete an existing UI Template identified by its `Name`.",
        "operationId": "DeleteUiTemplate",
        "parameters": [
          {
            "name": "uiTemplateName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Correlation-Id": {
                "description": "Unique identifier of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "BaseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Unique identifier",
            "format": "int32"
          },
          "createdBy": {
            "type": "string",
            "description": "Creation requester"
          },
          "createStamp": {
            "type": "string",
            "description": "Date and time of creation (UTC)",
            "format": "date-time"
          },
          "updatedBy": {
            "type": "string",
            "description": "Requester of the last update",
            "nullable": true
          },
          "updateStamp": {
            "type": "string",
            "description": "Date and time of the last update (UTC)",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Base DTO containing fields that are common to all DTOs"
      },
      "BaseValueTypeDto": {
        "type": "object",
        "additionalProperties": false,
        "description": "Base DTO containing fields that are common to all value types DTOs"
      },
      "CreateCommand": {
        "required": [
          "createdBy"
        ],
        "type": "object",
        "properties": {
          "createdBy": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Requester of the creation"
          }
        },
        "additionalProperties": false,
        "description": "Base class for commands involving creation"
      },
      "CreateUiTemplateColorPalette": {
        "required": [
          "primaryColor",
          "primaryColorPill",
          "primaryColorText",
          "secondaryColor",
          "secondaryColorLightOne",
          "secondaryColorLightTwo",
          "tertiaryColor"
        ],
        "type": "object",
        "properties": {
          "primaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for main elements"
          },
          "primaryColorText": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for texts on the primary color"
          },
          "primaryColorPill": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for pills on the primary color"
          },
          "secondaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for secondary elements"
          },
          "secondaryColorLightOne": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal lighter color used for secondary elements"
          },
          "secondaryColorLightTwo": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal even more lighter color used for secondary elements"
          },
          "tertiaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for some rare elements"
          }
        },
        "additionalProperties": false
      },
      "CreateUiTemplateCommand": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CreateCommand"
          },
          {
            "required": [
              "colorPalette",
              "displayName",
              "footerLogo",
              "headerLogo",
              "name",
              "senderIdentifiers"
            ],
            "type": "object",
            "properties": {
              "name": {
                "maxLength": 100,
                "minLength": 1,
                "type": "string",
                "description": "Unique code name used as the template identifier"
              },
              "displayName": {
                "maxLength": 255,
                "minLength": 1,
                "type": "string",
                "description": "Name that will be used for display purpose (translation term)"
              },
              "description": {
                "maxLength": 255,
                "type": "string",
                "description": "Quick description (not shown to citizen)",
                "nullable": true
              },
              "svgCssFilter": {
                "maxLength": 2000,
                "type": "string",
                "description": "CSS filter applied on the SVG images to adapt their color. \r\nSee https://codepen.io/sosuke/pen/Pjoqqp",
                "nullable": true
              },
              "colorPalette": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateUiTemplateColorPalette"
                  }
                ],
                "description": "Colors data"
              },
              "headerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateUiTemplateLogo"
                  }
                ],
                "description": "Header logo data"
              },
              "footerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateUiTemplateLogo"
                  }
                ],
                "description": "Footer logo data"
              },
              "links": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CreateUiTemplateLink"
                },
                "description": "List of links displayed in the footer",
                "nullable": true
              },
              "socialNetworks": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CreateUiTemplateSocialNetwork"
                },
                "description": "List of social networks displayed in the footer",
                "nullable": true
              },
              "senderIdentifiers": {
                "type": "array",
                "items": {
                  "maxLength": 200,
                  "minLength": 1,
                  "type": "string"
                },
                "description": "List of unique SenderIds related to a template.",
                "nullable": true
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "CreateUiTemplateLink": {
        "required": [
          "displayName",
          "name",
          "redirectUrl"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Code name to identify a link"
          },
          "displayName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "Name that will be used for display purpose (translation term)"
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "Quick description (not shown to citizen)",
            "nullable": true
          },
          "redirectUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "URL on which the link will redirect"
          },
          "isNewTab": {
            "type": "boolean",
            "description": "Indicates if accessing the link will open a new tab or not"
          }
        },
        "additionalProperties": false
      },
      "CreateUiTemplateLogo": {
        "required": [
          "source"
        ],
        "type": "object",
        "properties": {
          "source": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "Relative (to ePortal folder) or absolute URL to the logo image file"
          },
          "heightDesktop": {
            "minimum": 0,
            "exclusiveMinimum": true,
            "type": "integer",
            "description": "Height in pixel of the logo in desktop view",
            "format": "int32"
          },
          "heightMobile": {
            "minimum": 0,
            "exclusiveMinimum": true,
            "type": "integer",
            "description": "Height in pixel of the logo in mobile view",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateUiTemplateSocialNetwork": {
        "required": [
          "displayName",
          "name",
          "redirectUrl"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Code name to identify a link"
          },
          "displayName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "Name that will be used for display purpose (translation term)"
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "Quick description (not shown to citizen)",
            "nullable": true
          },
          "redirectUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "URL on which the link will redirect"
          },
          "icon": {
            "maxLength": 50,
            "type": "string",
            "description": "Icon CSS classes from FontAwesome library"
          }
        },
        "additionalProperties": false
      },
      "HttpValidationProblemDetails": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ProblemDetails"
          },
          {
            "type": "object",
            "properties": {
              "errors": {
                "type": "object",
                "additionalProperties": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "URI that identifies the problem detail type",
            "nullable": true
          },
          "title": {
            "type": "string",
            "description": "A short human-readable summary about the problem",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "description": "HTTP Status Code",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "description": "A human-readable explanation about the problem",
            "nullable": true
          },
          "correlationId": {
            "type": "string",
            "description": "Unique identifier of the request"
          }
        },
        "additionalProperties": { }
      },
      "UiColorPaletteDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseValueTypeDto"
          },
          {
            "type": "object",
            "properties": {
              "primaryColor": {
                "type": "string",
                "description": "Hexadecimal color used for main elements"
              },
              "primaryColorText": {
                "type": "string",
                "description": "Hexadecimal color used for texts on the primary color"
              },
              "primaryColorPill": {
                "type": "string",
                "description": "Hexadecimal color used for pills on the primary color"
              },
              "secondaryColor": {
                "type": "string",
                "description": "Hexadecimal color used for secondary elements"
              },
              "secondaryColorLightOne": {
                "type": "string",
                "description": "Hexadecimal lighter color used for secondary elements"
              },
              "secondaryColorLightTwo": {
                "type": "string",
                "description": "Hexadecimal even more lighter color used for secondary elements"
              },
              "tertiaryColor": {
                "type": "string",
                "description": "Hexadecimal color used for some rare elements"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UiLinkDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseValueTypeDto"
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Code name to identify a link"
              },
              "displayName": {
                "type": "string",
                "description": "Name that will be used for display purpose (translation term)"
              },
              "description": {
                "type": "string",
                "description": "Quick description (not shown to citizen)",
                "nullable": true
              },
              "redirectUrl": {
                "type": "string",
                "description": "URL on which the link will redirect"
              },
              "isNewTab": {
                "type": "boolean",
                "description": "Indicates if accessing the link will open a new tab or not"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UiLogoDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseValueTypeDto"
          },
          {
            "type": "object",
            "properties": {
              "source": {
                "type": "string",
                "description": "Relative (to ePortal folder) or absolute URL to the logo image file"
              },
              "heightDesktop": {
                "type": "integer",
                "description": "Height in pixel of the logo in desktop view",
                "format": "int32"
              },
              "heightMobile": {
                "type": "integer",
                "description": "Height in pixel of the logo in mobile view",
                "format": "int32"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UiSocialNetworkDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseValueTypeDto"
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Code name to identify a link"
              },
              "displayName": {
                "type": "string",
                "description": "Name that will be used for display purpose (translation term)"
              },
              "description": {
                "type": "string",
                "description": "Quick description (not shown to citizen)",
                "nullable": true
              },
              "redirectUrl": {
                "type": "string",
                "description": "URL on which the link will redirect"
              },
              "icon": {
                "type": "string",
                "description": "Icon CSS classes from FontAwesome library"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UiTemplateDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseDto"
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Unique code name used as the template identifier"
              },
              "displayName": {
                "type": "string",
                "description": "Name that will be used for display purpose (translation term)"
              },
              "description": {
                "type": "string",
                "description": "Quick description (not shown to citizen)",
                "nullable": true
              },
              "svgCssFilter": {
                "type": "string",
                "description": "CSS filter applied on the SVG images to adapt their color. \r\nSee https://codepen.io/sosuke/pen/Pjoqqp",
                "nullable": true
              },
              "colorPalette": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UiColorPaletteDto"
                  }
                ],
                "description": "Colors data"
              },
              "headerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UiLogoDto"
                  }
                ],
                "description": "Header logo data"
              },
              "footerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UiLogoDto"
                  }
                ],
                "description": "Footer logo data"
              },
              "links": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UiLinkDto"
                },
                "description": "List of links displayed in the footer",
                "nullable": true
              },
              "socialNetworks": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UiSocialNetworkDto"
                },
                "description": "List of social networks displayed in the footer",
                "nullable": true
              },
              "senderIdentifiers": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "List of unique SenderIds related to a template.",
                "nullable": true
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UpdateCommand": {
        "required": [
          "updatedBy"
        ],
        "type": "object",
        "properties": {
          "updatedBy": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Requester of the update"
          }
        },
        "additionalProperties": false,
        "description": "Base class for commands involving update"
      },
      "UpdateUiTemplateColorPalette": {
        "required": [
          "primaryColor",
          "primaryColorPill",
          "primaryColorText",
          "secondaryColor",
          "secondaryColorLightOne",
          "secondaryColorLightTwo",
          "tertiaryColor"
        ],
        "type": "object",
        "properties": {
          "primaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for main elements"
          },
          "primaryColorText": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for texts on the primary color"
          },
          "primaryColorPill": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for pills on the primary color"
          },
          "secondaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for secondary elements"
          },
          "secondaryColorLightOne": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal lighter color used for secondary elements"
          },
          "secondaryColorLightTwo": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal even more lighter color used for secondary elements"
          },
          "tertiaryColor": {
            "minLength": 1,
            "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$",
            "type": "string",
            "description": "Hexadecimal color used for some rare elements"
          }
        },
        "additionalProperties": false
      },
      "UpdateUiTemplateCommand": {
        "allOf": [
          {
            "$ref": "#/components/schemas/UpdateCommand"
          },
          {
            "required": [
              "colorPalette",
              "displayName",
              "footerLogo",
              "headerLogo",
              "senderIdentifiers"
            ],
            "type": "object",
            "properties": {
              "displayName": {
                "maxLength": 255,
                "minLength": 1,
                "type": "string",
                "description": "Name that will be used for display purpose (translation term)"
              },
              "description": {
                "maxLength": 255,
                "type": "string",
                "description": "Quick description (not shown to citizen)",
                "nullable": true
              },
              "svgCssFilter": {
                "maxLength": 2000,
                "type": "string",
                "description": "CSS filter applied on the SVG images to adapt their color. \r\nSee https://codepen.io/sosuke/pen/Pjoqqp",
                "nullable": true
              },
              "colorPalette": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UpdateUiTemplateColorPalette"
                  }
                ],
                "description": "Colors data"
              },
              "headerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UpdateUiTemplateLogo"
                  }
                ],
                "description": "Header logo data"
              },
              "footerLogo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UpdateUiTemplateLogo"
                  }
                ],
                "description": "Footer logo data"
              },
              "links": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateUiTemplateLink"
                },
                "description": "List of links displayed in the footer",
                "nullable": true
              },
              "socialNetworks": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateUiTemplateSocialNetwork"
                },
                "description": "List of social networks displayed in the footer",
                "nullable": true
              },
              "senderIdentifiers": {
                "type": "array",
                "items": {
                  "maxLength": 200,
                  "minLength": 1,
                  "type": "string"
                },
                "description": "List of unique SenderIds related to a template.",
                "nullable": true
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "UpdateUiTemplateLink": {
        "required": [
          "displayName",
          "name",
          "redirectUrl"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Code name to identify a link"
          },
          "displayName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "Name that will be used for display purpose (translation term)"
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "Quick description (not shown to citizen)",
            "nullable": true
          },
          "redirectUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "URL on which the link will redirect"
          },
          "isNewTab": {
            "type": "boolean",
            "description": "Indicates if accessing the link will open a new tab or not"
          }
        },
        "additionalProperties": false
      },
      "UpdateUiTemplateLogo": {
        "required": [
          "source"
        ],
        "type": "object",
        "properties": {
          "source": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "Relative (to ePortal folder) or absolute URL to the logo image file"
          },
          "heightDesktop": {
            "minimum": 0,
            "exclusiveMinimum": true,
            "type": "integer",
            "description": "Height in pixel of the logo in desktop view",
            "format": "int32"
          },
          "heightMobile": {
            "minimum": 0,
            "exclusiveMinimum": true,
            "type": "integer",
            "description": "Height in pixel of the logo in mobile view",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UpdateUiTemplateSocialNetwork": {
        "required": [
          "displayName",
          "name",
          "redirectUrl"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Code name to identify a link"
          },
          "displayName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "Name that will be used for display purpose (translation term)"
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "Quick description (not shown to citizen)",
            "nullable": true
          },
          "redirectUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "URL on which the link will redirect"
          },
          "icon": {
            "maxLength": 50,
            "type": "string",
            "description": "Icon CSS classes from FontAwesome library"
          }
        },
        "additionalProperties": false
      },
      "ValidationProblemDetails": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      }
    }
  },
  "tags": [
    {
      "name": "UiTemplates"
    }
  ],
  "x-tagGroups": [
    {
      "name": "Endpoints",
      "tags": [
        "UiTemplates"
      ]
    }
  ]
}