Skip to content

PhotographyPublicSiteDto

Endpoints · All schemas

FieldRequiredDescription
aboutYesstring
brandYesobject
contactYesstring
enabledYesboolean
portfolioYesarray
presentationNoobject
servicesYesstring
titleYesstring

Complete definition

required lists fields that must be present. nullable allows a null value; it does not make the field optional. Response enums retain exact wire values for compatibility.

{
  "additionalProperties": false,
  "properties": {
    "about": {
      "maxLength": 10000,
      "type": "string"
    },
    "brand": {
      "properties": {
        "background": {
          "type": "string"
        },
        "color": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "font": {
          "type": "string"
        },
        "logoUrl": {
          "nullable": true,
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "tagline": {
          "type": "string"
        },
        "textColor": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "tagline",
        "email",
        "phone",
        "color",
        "background",
        "textColor",
        "font",
        "logoUrl"
      ],
      "type": "object"
    },
    "contact": {
      "maxLength": 5000,
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "portfolio": {
      "items": {
        "properties": {
          "captureId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
            "type": "string"
          },
          "shootId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "shootId",
          "captureId",
          "url"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "presentation": {
      "additionalProperties": false,
      "default": {
        "font": "editorial",
        "layout": "editorial",
        "palette": "studio",
        "spacing": "comfortable"
      },
      "properties": {
        "font": {
          "enum": [
            "editorial",
            "modern",
            "script"
          ],
          "type": "string"
        },
        "layout": {
          "enum": [
            "editorial",
            "grid",
            "slideshow"
          ],
          "type": "string"
        },
        "palette": {
          "enum": [
            "studio",
            "ivory",
            "charcoal"
          ],
          "type": "string"
        },
        "spacing": {
          "enum": [
            "compact",
            "comfortable",
            "airy"
          ],
          "type": "string"
        }
      },
      "required": [
        "layout",
        "spacing",
        "font",
        "palette"
      ],
      "type": "object"
    },
    "services": {
      "maxLength": 10000,
      "type": "string"
    },
    "title": {
      "maxLength": 200,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "about",
    "brand",
    "contact",
    "enabled",
    "portfolio",
    "services",
    "title"
  ],
  "type": "object"
}