{
  "components": {
    "schemas": {
      "CaptureLeadResultDto": {
        "properties": {
          "contact": {
            "properties": {
              "accountId": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "createdAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "documentValue": {
                "type": "string"
              },
              "fullName": {
                "type": "string"
              },
              "id": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "organizationName": {
                "type": "string"
              },
              "primaryEmail": {
                "type": "string"
              },
              "primaryPhone": {
                "type": "string"
              },
              "updatedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              }
            },
            "required": [
              "id",
              "accountId",
              "createdAt",
              "updatedAt"
            ],
            "type": "object"
          },
          "lead": {
            "properties": {
              "accountId": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "attribution": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "campaign": {
                "type": "string"
              },
              "contactId": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "createdAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "customFields": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "id": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "medium": {
                "type": "string"
              },
              "message": {
                "type": "string"
              },
              "organizationId": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "productInterestId": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "source": {
                "type": "string"
              },
              "status": {
                "enum": [
                  "new",
                  "contacted",
                  "qualified",
                  "won",
                  "lost"
                ],
                "type": "string"
              },
              "updatedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              }
            },
            "required": [
              "id",
              "accountId",
              "contactId",
              "productInterestId",
              "status",
              "createdAt",
              "updatedAt"
            ],
            "type": "object"
          },
          "submissionId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "thankYouMessage": {
            "type": "string"
          },
          "thankYouTitle": {
            "type": "string"
          }
        },
        "required": [
          "contact",
          "lead",
          "submissionId"
        ],
        "type": "object"
      },
      "CaptureLeadSubmissionRequestDto": {
        "properties": {
          "attribution": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "consent": {
            "properties": {
              "emailMarketing": {
                "type": "boolean"
              },
              "policyVersion": {
                "maxLength": 80,
                "type": "string"
              }
            },
            "type": "object"
          },
          "fields": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "required": [
          "fields"
        ],
        "type": "object"
      },
      "CreatePlaybookProjectRequestDto": {
        "properties": {
          "description": {
            "maxLength": 1000,
            "type": "string"
          },
          "localProjectId": {
            "maxLength": 160,
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "maxLength": 180,
            "minLength": 1,
            "type": "string"
          },
          "repoUrl": {
            "maxLength": 500,
            "type": "string"
          },
          "slug": {
            "maxLength": 120,
            "minLength": 1,
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name"
        ],
        "type": "object"
      },
      "PaginatedPlaybookCatalogsDto": {
        "properties": {
          "data": {
            "items": {
              "properties": {
                "archivedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "createdAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "currentVersion": {
                  "properties": {
                    "id": {
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                      "type": "string"
                    },
                    "manifestHash": {
                      "maxLength": 128,
                      "minLength": 32,
                      "type": "string"
                    },
                    "publishedAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "resourceCount": {
                      "maximum": 9007199254740991,
                      "minimum": 0,
                      "type": "integer"
                    },
                    "resourcePins": {
                      "items": {
                        "properties": {
                          "contentHash": {
                            "maxLength": 128,
                            "minLength": 32,
                            "type": "string"
                          },
                          "resourceHumanRef": {
                            "maxLength": 260,
                            "minLength": 5,
                            "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "resourceId": {
                            "format": "uuid",
                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                            "type": "string"
                          },
                          "resourceVersionId": {
                            "format": "uuid",
                            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                            "type": "string"
                          },
                          "version": {
                            "maxLength": 80,
                            "minLength": 1,
                            "type": "string"
                          }
                        },
                        "required": [
                          "resourceId",
                          "resourceHumanRef",
                          "resourceVersionId",
                          "version",
                          "contentHash"
                        ],
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "version": {
                      "maxLength": 80,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "version",
                    "resourcePins",
                    "manifestHash",
                    "resourceCount"
                  ],
                  "type": "object"
                },
                "description": {
                  "maxLength": 1000,
                  "type": "string"
                },
                "facets": {
                  "properties": {
                    "capability": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "channel": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "framework": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "planAccess": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "technology": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                },
                "humanRef": {
                  "maxLength": 180,
                  "minLength": 3,
                  "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "id": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "name": {
                  "maxLength": 160,
                  "minLength": 1,
                  "type": "string"
                },
                "owner": {
                  "enum": [
                    "sumr",
                    "org"
                  ],
                  "type": "string"
                },
                "slug": {
                  "maxLength": 120,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "sourceScope": {
                  "enum": [
                    "sumr",
                    "account"
                  ],
                  "type": "string"
                },
                "status": {
                  "enum": [
                    "draft",
                    "active",
                    "archived"
                  ],
                  "type": "string"
                },
                "updatedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "sourceScope",
                "owner",
                "slug",
                "humanRef",
                "name",
                "status",
                "createdAt",
                "updatedAt"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "meta": {
            "properties": {
              "page": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "pageCount": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "pageSize": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "total": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              }
            },
            "required": [
              "page",
              "pageSize",
              "pageCount",
              "total"
            ],
            "type": "object"
          }
        },
        "required": [
          "data",
          "meta"
        ],
        "type": "object"
      },
      "PaginatedPlaybookProjectsDto": {
        "properties": {
          "data": {
            "items": {
              "properties": {
                "archivedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "createdAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "description": {
                  "maxLength": 1000,
                  "type": "string"
                },
                "id": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "localProjectId": {
                  "maxLength": 160,
                  "type": "string"
                },
                "metadata": {
                  "additionalProperties": {},
                  "propertyNames": {
                    "type": "string"
                  },
                  "type": "object"
                },
                "name": {
                  "maxLength": 180,
                  "minLength": 1,
                  "type": "string"
                },
                "repoUrl": {
                  "maxLength": 500,
                  "type": "string"
                },
                "slug": {
                  "maxLength": 120,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "status": {
                  "enum": [
                    "active",
                    "archived"
                  ],
                  "type": "string"
                },
                "updatedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "slug",
                "name",
                "status",
                "createdAt",
                "updatedAt"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "meta": {
            "properties": {
              "page": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "pageCount": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "pageSize": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "total": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              }
            },
            "required": [
              "page",
              "pageSize",
              "pageCount",
              "total"
            ],
            "type": "object"
          }
        },
        "required": [
          "data",
          "meta"
        ],
        "type": "object"
      },
      "PaginatedPlaybookResourcesDto": {
        "properties": {
          "data": {
            "items": {
              "properties": {
                "archivedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "catalogHumanRef": {
                  "maxLength": 180,
                  "minLength": 3,
                  "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "catalogId": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "createdAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "currentVersion": {
                  "properties": {
                    "archivedAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "contentHash": {
                      "maxLength": 128,
                      "minLength": 32,
                      "type": "string"
                    },
                    "contentSizeBytes": {
                      "maximum": 9007199254740991,
                      "minimum": 0,
                      "type": "integer"
                    },
                    "id": {
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                      "type": "string"
                    },
                    "mediaType": {
                      "maxLength": 120,
                      "minLength": 1,
                      "type": "string"
                    },
                    "publishedAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "status": {
                      "enum": [
                        "draft",
                        "published",
                        "superseded",
                        "archived"
                      ],
                      "type": "string"
                    },
                    "storageBackend": {
                      "enum": [
                        "object-storage",
                        "postgres-text"
                      ],
                      "type": "string"
                    },
                    "supersededAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "version": {
                      "maxLength": 80,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "version",
                    "contentHash",
                    "contentSizeBytes",
                    "mediaType",
                    "storageBackend",
                    "status"
                  ],
                  "type": "object"
                },
                "description": {
                  "maxLength": 1000,
                  "type": "string"
                },
                "facets": {
                  "properties": {
                    "capability": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "channel": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "framework": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "planAccess": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "technology": {
                      "items": {
                        "maxLength": 80,
                        "minLength": 1,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "type": "string"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                },
                "humanRef": {
                  "maxLength": 260,
                  "minLength": 5,
                  "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "id": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "kind": {
                  "enum": [
                    "document",
                    "topic",
                    "reference",
                    "team-member",
                    "workflow",
                    "lifecycle",
                    "integration",
                    "policy"
                  ],
                  "type": "string"
                },
                "manifest": {
                  "additionalProperties": {},
                  "propertyNames": {
                    "type": "string"
                  },
                  "type": "object"
                },
                "slug": {
                  "maxLength": 120,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "sourceScope": {
                  "enum": [
                    "sumr",
                    "account"
                  ],
                  "type": "string"
                },
                "status": {
                  "enum": [
                    "draft",
                    "active",
                    "archived"
                  ],
                  "type": "string"
                },
                "title": {
                  "maxLength": 220,
                  "minLength": 1,
                  "type": "string"
                },
                "updatedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "catalogId",
                "catalogHumanRef",
                "sourceScope",
                "slug",
                "humanRef",
                "kind",
                "title",
                "status",
                "manifest",
                "createdAt",
                "updatedAt"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "meta": {
            "properties": {
              "page": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "pageCount": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "pageSize": {
                "maximum": 9007199254740991,
                "minimum": 1,
                "type": "integer"
              },
              "total": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              }
            },
            "required": [
              "page",
              "pageSize",
              "pageCount",
              "total"
            ],
            "type": "object"
          }
        },
        "required": [
          "data",
          "meta"
        ],
        "type": "object"
      },
      "PlaybookProjectCatalogsDto": {
        "properties": {
          "catalogs": {
            "items": {
              "properties": {
                "catalog": {
                  "properties": {
                    "archivedAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "createdAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    },
                    "currentVersion": {
                      "properties": {
                        "id": {
                          "format": "uuid",
                          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                          "type": "string"
                        },
                        "manifestHash": {
                          "maxLength": 128,
                          "minLength": 32,
                          "type": "string"
                        },
                        "publishedAt": {
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                          "type": "string"
                        },
                        "resourceCount": {
                          "maximum": 9007199254740991,
                          "minimum": 0,
                          "type": "integer"
                        },
                        "resourcePins": {
                          "items": {
                            "properties": {
                              "contentHash": {
                                "maxLength": 128,
                                "minLength": 32,
                                "type": "string"
                              },
                              "resourceHumanRef": {
                                "maxLength": 260,
                                "minLength": 5,
                                "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                                "type": "string"
                              },
                              "resourceId": {
                                "format": "uuid",
                                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                                "type": "string"
                              },
                              "resourceVersionId": {
                                "format": "uuid",
                                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                                "type": "string"
                              },
                              "version": {
                                "maxLength": 80,
                                "minLength": 1,
                                "type": "string"
                              }
                            },
                            "required": [
                              "resourceId",
                              "resourceHumanRef",
                              "resourceVersionId",
                              "version",
                              "contentHash"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        },
                        "version": {
                          "maxLength": 80,
                          "minLength": 1,
                          "type": "string"
                        }
                      },
                      "required": [
                        "id",
                        "version",
                        "resourcePins",
                        "manifestHash",
                        "resourceCount"
                      ],
                      "type": "object"
                    },
                    "description": {
                      "maxLength": 1000,
                      "type": "string"
                    },
                    "facets": {
                      "properties": {
                        "capability": {
                          "items": {
                            "maxLength": 80,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "channel": {
                          "items": {
                            "maxLength": 80,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "framework": {
                          "items": {
                            "maxLength": 80,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "planAccess": {
                          "items": {
                            "maxLength": 80,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "technology": {
                          "items": {
                            "maxLength": 80,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                            "type": "string"
                          },
                          "type": "array"
                        }
                      },
                      "type": "object"
                    },
                    "humanRef": {
                      "maxLength": 180,
                      "minLength": 3,
                      "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                      "type": "string"
                    },
                    "id": {
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                      "type": "string"
                    },
                    "name": {
                      "maxLength": 160,
                      "minLength": 1,
                      "type": "string"
                    },
                    "owner": {
                      "enum": [
                        "sumr",
                        "org"
                      ],
                      "type": "string"
                    },
                    "slug": {
                      "maxLength": 120,
                      "minLength": 1,
                      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                      "type": "string"
                    },
                    "sourceScope": {
                      "enum": [
                        "sumr",
                        "account"
                      ],
                      "type": "string"
                    },
                    "status": {
                      "enum": [
                        "draft",
                        "active",
                        "archived"
                      ],
                      "type": "string"
                    },
                    "updatedAt": {
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "sourceScope",
                    "owner",
                    "slug",
                    "humanRef",
                    "name",
                    "status",
                    "createdAt",
                    "updatedAt"
                  ],
                  "type": "object"
                },
                "catalogId": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "catalogRef": {
                  "maxLength": 180,
                  "minLength": 3,
                  "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "createdAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                },
                "id": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "mode": {
                  "enum": [
                    "recommended",
                    "all",
                    "custom"
                  ],
                  "type": "string"
                },
                "projectId": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "resolvedCatalogVersionId": {
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                  "type": "string"
                },
                "resolvedResourceCount": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "resourceRefs": {
                  "items": {
                    "maxLength": 260,
                    "minLength": 5,
                    "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "updatedAt": {
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "projectId",
                "catalogId",
                "catalogRef",
                "mode",
                "catalog",
                "createdAt",
                "updatedAt"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "project": {
            "properties": {
              "archivedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "createdAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "description": {
                "maxLength": 1000,
                "type": "string"
              },
              "id": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "localProjectId": {
                "maxLength": 160,
                "type": "string"
              },
              "metadata": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "name": {
                "maxLength": 180,
                "minLength": 1,
                "type": "string"
              },
              "repoUrl": {
                "maxLength": 500,
                "type": "string"
              },
              "slug": {
                "maxLength": 120,
                "minLength": 1,
                "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                "type": "string"
              },
              "status": {
                "enum": [
                  "active",
                  "archived"
                ],
                "type": "string"
              },
              "updatedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              }
            },
            "required": [
              "id",
              "slug",
              "name",
              "status",
              "createdAt",
              "updatedAt"
            ],
            "type": "object"
          }
        },
        "required": [
          "project",
          "catalogs"
        ],
        "type": "object"
      },
      "PlaybookProjectDto": {
        "properties": {
          "archivedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "description": {
            "maxLength": 1000,
            "type": "string"
          },
          "id": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "localProjectId": {
            "maxLength": 160,
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "maxLength": 180,
            "minLength": 1,
            "type": "string"
          },
          "repoUrl": {
            "maxLength": 500,
            "type": "string"
          },
          "slug": {
            "maxLength": 120,
            "minLength": 1,
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          },
          "status": {
            "enum": [
              "active",
              "archived"
            ],
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "name",
          "status",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "PlaybookProjectSyncEventDto": {
        "properties": {
          "cacheStatus": {
            "enum": [
              "fresh",
              "stale",
              "skipped",
              "unavailable"
            ],
            "type": "string"
          },
          "catalogVersions": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "createdAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "finishedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "id": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "planAccessReason": {
            "maxLength": 160,
            "type": "string"
          },
          "planAccessState": {
            "enum": [
              "active",
              "trial",
              "inactive",
              "canceled",
              "insufficient",
              "unknown"
            ],
            "type": "string"
          },
          "projectId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "resourceChecksums": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "startedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "status": {
            "enum": [
              "succeeded",
              "warning",
              "failed"
            ],
            "type": "string"
          },
          "warnings": {
            "items": {
              "additionalProperties": {},
              "propertyNames": {
                "type": "string"
              },
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "projectId",
          "status",
          "cacheStatus",
          "planAccessState",
          "createdAt"
        ],
        "type": "object"
      },
      "PlaybookResourceDetailDto": {
        "properties": {
          "archivedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "catalogHumanRef": {
            "maxLength": 180,
            "minLength": 3,
            "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          },
          "catalogId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "currentVersion": {
            "properties": {
              "archivedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "content": {
                "description": "Content returned by the service after loading it from the configured Resource content store; object storage keys are internal.",
                "type": "string"
              },
              "contentHash": {
                "maxLength": 128,
                "minLength": 32,
                "type": "string"
              },
              "contentSizeBytes": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "id": {
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
                "type": "string"
              },
              "manifest": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "mediaType": {
                "maxLength": 120,
                "minLength": 1,
                "type": "string"
              },
              "publishedAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "status": {
                "enum": [
                  "draft",
                  "published",
                  "superseded",
                  "archived"
                ],
                "type": "string"
              },
              "storageBackend": {
                "enum": [
                  "object-storage",
                  "postgres-text"
                ],
                "type": "string"
              },
              "supersededAt": {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              "version": {
                "maxLength": 80,
                "minLength": 1,
                "type": "string"
              }
            },
            "required": [
              "id",
              "version",
              "contentHash",
              "contentSizeBytes",
              "mediaType",
              "storageBackend",
              "status",
              "manifest",
              "content"
            ],
            "type": "object"
          },
          "description": {
            "maxLength": 1000,
            "type": "string"
          },
          "facets": {
            "properties": {
              "capability": {
                "items": {
                  "maxLength": 80,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "type": "array"
              },
              "channel": {
                "items": {
                  "maxLength": 80,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "type": "array"
              },
              "framework": {
                "items": {
                  "maxLength": 80,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "type": "array"
              },
              "planAccess": {
                "items": {
                  "maxLength": 80,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "type": "array"
              },
              "technology": {
                "items": {
                  "maxLength": 80,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "type": "array"
              }
            },
            "type": "object"
          },
          "humanRef": {
            "maxLength": 260,
            "minLength": 5,
            "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          },
          "id": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "kind": {
            "enum": [
              "document",
              "topic",
              "reference",
              "team-member",
              "workflow",
              "lifecycle",
              "integration",
              "policy"
            ],
            "type": "string"
          },
          "manifest": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "slug": {
            "maxLength": 120,
            "minLength": 1,
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          },
          "sourceScope": {
            "enum": [
              "sumr",
              "account"
            ],
            "type": "string"
          },
          "status": {
            "enum": [
              "draft",
              "active",
              "archived"
            ],
            "type": "string"
          },
          "title": {
            "maxLength": 220,
            "minLength": 1,
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          }
        },
        "required": [
          "id",
          "catalogId",
          "catalogHumanRef",
          "sourceScope",
          "slug",
          "humanRef",
          "kind",
          "title",
          "status",
          "manifest",
          "createdAt",
          "updatedAt",
          "currentVersion"
        ],
        "type": "object"
      },
      "PlaybookResourceVersionDetailDto": {
        "properties": {
          "archivedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "content": {
            "description": "Content returned by the service after loading it from the configured Resource content store; object storage keys are internal.",
            "type": "string"
          },
          "contentHash": {
            "maxLength": 128,
            "minLength": 32,
            "type": "string"
          },
          "contentSizeBytes": {
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          "id": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "manifest": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "mediaType": {
            "maxLength": 120,
            "minLength": 1,
            "type": "string"
          },
          "publishedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "status": {
            "enum": [
              "draft",
              "published",
              "superseded",
              "archived"
            ],
            "type": "string"
          },
          "storageBackend": {
            "enum": [
              "object-storage",
              "postgres-text"
            ],
            "type": "string"
          },
          "supersededAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "version": {
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id",
          "version",
          "contentHash",
          "contentSizeBytes",
          "mediaType",
          "storageBackend",
          "status",
          "manifest",
          "content"
        ],
        "type": "object"
      },
      "PublicFormDto": {
        "properties": {
          "accountId": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "allowedOrigins": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "maxLength": 1000,
            "type": "string"
          },
          "fields": {
            "items": {
              "properties": {
                "helpText": {
                  "maxLength": 300,
                  "type": "string"
                },
                "key": {
                  "maxLength": 120,
                  "minLength": 1,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "label": {
                  "maxLength": 160,
                  "minLength": 1,
                  "type": "string"
                },
                "mapsTo": {
                  "enum": [
                    "full-name",
                    "email",
                    "phone",
                    "document",
                    "organization-name",
                    "message",
                    "consent-email",
                    "custom"
                  ],
                  "type": "string"
                },
                "order": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "placeholder": {
                  "maxLength": 160,
                  "type": "string"
                },
                "required": {
                  "type": "boolean"
                },
                "type": {
                  "enum": [
                    "text",
                    "email",
                    "phone",
                    "textarea",
                    "checkbox",
                    "hidden"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "key",
                "label",
                "type",
                "required",
                "order"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "id": {
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
            "type": "string"
          },
          "key": {
            "maxLength": 120,
            "minLength": 1,
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
            "type": "string"
          },
          "thankYouMessage": {
            "maxLength": 1000,
            "type": "string"
          },
          "thankYouTitle": {
            "maxLength": 180,
            "type": "string"
          },
          "title": {
            "maxLength": 180,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id",
          "accountId",
          "key",
          "title",
          "fields",
          "allowedOrigins"
        ],
        "type": "object"
      },
      "RecordPlaybookProjectSyncEventRequestDto": {
        "properties": {
          "cacheStatus": {
            "enum": [
              "fresh",
              "stale",
              "skipped",
              "unavailable"
            ],
            "type": "string"
          },
          "catalogVersions": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "finishedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "planAccessReason": {
            "maxLength": 160,
            "type": "string"
          },
          "planAccessState": {
            "enum": [
              "active",
              "trial",
              "inactive",
              "canceled",
              "insufficient",
              "unknown"
            ],
            "type": "string"
          },
          "resourceChecksums": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "startedAt": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "status": {
            "enum": [
              "succeeded",
              "warning",
              "failed"
            ],
            "type": "string"
          },
          "warnings": {
            "items": {
              "additionalProperties": {},
              "propertyNames": {
                "type": "string"
              },
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "status",
          "cacheStatus",
          "planAccessState"
        ],
        "type": "object"
      },
      "SetPlaybookProjectCatalogsRequestDto": {
        "properties": {
          "catalogs": {
            "items": {
              "properties": {
                "catalogRef": {
                  "maxLength": 180,
                  "minLength": 3,
                  "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                  "type": "string"
                },
                "mode": {
                  "enum": [
                    "recommended",
                    "all",
                    "custom"
                  ],
                  "type": "string"
                },
                "resourceRefs": {
                  "items": {
                    "maxLength": 260,
                    "minLength": 5,
                    "pattern": "^(sumr|org)\\/[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$",
                    "type": "string"
                  },
                  "type": "array"
                }
              },
              "required": [
                "catalogRef",
                "mode"
              ],
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "catalogs"
        ],
        "type": "object"
      }
    }
  },
  "info": {
    "contact": {},
    "description": "SUMR Platform public API artifact generated from the registered Nest gateway route graph.",
    "title": "SUMR Platform v3 public API",
    "version": "3.0.0"
  },
  "openapi": "3.0.0",
  "paths": {
    "/v3/flows/accounts/{accountId}/forms/{formKey}": {
      "get": {
        "description": "Returns the public form definition needed to render a Flow capture surface.",
        "operationId": "getPublicFlowForm",
        "parameters": [
          {
            "description": "Account id that owns the Flow form.",
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Public Flow form key.",
            "in": "path",
            "name": "formKey",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicFormDto"
                }
              }
            },
            "description": "Public form definition."
          }
        },
        "summary": "Get public Flow form",
        "tags": [
          "flows"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/flows/accounts/{accountId}/forms/{formKey}/submissions": {
      "post": {
        "description": "Stores a public Flow submission, links it to a deduped contact, and opens a lead.",
        "operationId": "captureFlowLead",
        "parameters": [
          {
            "description": "Account id that owns the Flow form.",
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Public Flow form key.",
            "in": "path",
            "name": "formKey",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CaptureLeadSubmissionRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CaptureLeadResultDto"
                }
              }
            },
            "description": "Lead captured."
          }
        },
        "summary": "Capture Flow lead",
        "tags": [
          "flows"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/catalogs": {
      "get": {
        "description": "Returns Catalogs the signed-in caller can use from SUMR-owned defaults and the current account.",
        "operationId": "listPlaybookCatalogs",
        "parameters": [
          {
            "description": "Filter Catalogs by source ownership scope.",
            "in": "query",
            "name": "sourceScope",
            "required": false,
            "schema": {
              "items": {
                "enum": [
                  "sumr",
                  "account"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Filter Catalogs by capability facet.",
            "in": "query",
            "name": "capability",
            "required": false,
            "schema": {
              "maxLength": 80,
              "minLength": 1,
              "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
              "type": "string"
            }
          },
          {
            "description": "Page number.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "maximum": 9007199254740991,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items per page.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "maximum": 100,
              "minimum": 1,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedPlaybookCatalogsDto"
                }
              }
            },
            "description": "Catalogs returned."
          }
        },
        "summary": "List Catalogs",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/catalogs/{owner}/{catalogSlug}/resources": {
      "get": {
        "description": "Returns Resources inside one SUMR-owned or current-account Catalog.",
        "operationId": "listPlaybookCatalogResources",
        "parameters": [
          {
            "description": "Catalog slug inside the owner namespace.",
            "in": "path",
            "name": "catalogSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter Resources by kind.",
            "in": "query",
            "name": "kind",
            "required": false,
            "schema": {
              "items": {
                "enum": [
                  "document",
                  "topic",
                  "reference",
                  "team-member",
                  "workflow",
                  "lifecycle",
                  "integration",
                  "policy"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Page number.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "maximum": 9007199254740991,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items per page.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "maximum": 100,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Human-facing Catalog owner segment.",
            "in": "path",
            "name": "owner",
            "required": true,
            "schema": {
              "enum": [
                "sumr",
                "org"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedPlaybookResourcesDto"
                }
              }
            },
            "description": "Resources returned."
          }
        },
        "summary": "List Resources in a Catalog",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/projects": {
      "get": {
        "description": "Returns cloud-linked Projects for the current account.",
        "operationId": "listPlaybookProjects",
        "parameters": [
          {
            "description": "Page number.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "maximum": 9007199254740991,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items per page.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "maximum": 100,
              "minimum": 1,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedPlaybookProjectsDto"
                }
              }
            },
            "description": "Projects returned."
          }
        },
        "summary": "List Projects",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      },
      "post": {
        "description": "Stores a cloud-linked Project. Local-only Projects stay outside Platform.",
        "operationId": "createPlaybookProject",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePlaybookProjectRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookProjectDto"
                }
              }
            },
            "description": "Project created."
          }
        },
        "summary": "Create Project",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/projects/{projectSlug}/catalogs": {
      "get": {
        "description": "Returns the Catalog configuration attached to one cloud-linked Project.",
        "operationId": "listPlaybookProjectCatalogs",
        "parameters": [
          {
            "description": "Cloud-linked Project slug inside the current account.",
            "in": "path",
            "name": "projectSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookProjectCatalogsDto"
                }
              }
            },
            "description": "Project Catalog configuration."
          }
        },
        "summary": "List configured Catalogs",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      },
      "put": {
        "description": "Replaces the Catalog configuration for one cloud-linked Project. M0 supports recommended and all modes; custom mode is reserved for M1.",
        "operationId": "setPlaybookProjectCatalogs",
        "parameters": [
          {
            "description": "Cloud-linked Project slug inside the current account.",
            "in": "path",
            "name": "projectSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetPlaybookProjectCatalogsRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookProjectCatalogsDto"
                }
              }
            },
            "description": "Updated Project Catalog configuration."
          }
        },
        "summary": "Set Catalog configuration",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/projects/{projectSlug}/resources": {
      "get": {
        "description": "Returns Resources resolved from the Catalogs attached to one cloud-linked Project.",
        "operationId": "listPlaybookProjectResources",
        "parameters": [
          {
            "description": "Cloud-linked Project slug inside the current account.",
            "in": "path",
            "name": "projectSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter Resources by kind.",
            "in": "query",
            "name": "kind",
            "required": false,
            "schema": {
              "items": {
                "enum": [
                  "document",
                  "topic",
                  "reference",
                  "team-member",
                  "workflow",
                  "lifecycle",
                  "integration",
                  "policy"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Page number.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "maximum": 9007199254740991,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items per page.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "maximum": 100,
              "minimum": 1,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedPlaybookResourcesDto"
                }
              }
            },
            "description": "Resources returned."
          }
        },
        "summary": "List resolved Resources",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/projects/{projectSlug}/sync-events": {
      "post": {
        "description": "Stores sync metadata, warnings, cache state, Plan Access state, and resolved Catalog versions for one cloud-linked Project.",
        "operationId": "recordPlaybookProjectSyncEvent",
        "parameters": [
          {
            "description": "Cloud-linked Project slug inside the current account.",
            "in": "path",
            "name": "projectSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecordPlaybookProjectSyncEventRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookProjectSyncEventDto"
                }
              }
            },
            "description": "Project Sync Event recorded."
          }
        },
        "summary": "Record sync status",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/resources/{resourceId}": {
      "get": {
        "description": "Returns one Resource with current content, content metadata, kind, and version metadata.",
        "operationId": "getPlaybookResource",
        "parameters": [
          {
            "description": "Immutable Resource id.",
            "in": "path",
            "name": "resourceId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookResourceDetailDto"
                }
              }
            },
            "description": "Resource returned."
          }
        },
        "summary": "Get Resource",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    },
    "/v3/playbook/resources/{resourceId}/versions/{versionId}": {
      "get": {
        "description": "Returns immutable content and metadata for one Resource Version. Object storage location remains internal.",
        "operationId": "getPlaybookResourceVersion",
        "parameters": [
          {
            "description": "Immutable Resource id.",
            "in": "path",
            "name": "resourceId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Immutable Resource Version id.",
            "in": "path",
            "name": "versionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaybookResourceVersionDetailDto"
                }
              }
            },
            "description": "Resource Version returned."
          }
        },
        "summary": "Get Resource Version content",
        "tags": [
          "playbook:customer"
        ],
        "x-kontract-surface": "public"
      }
    }
  },
  "servers": [
    {
      "description": "Production Platform API gateway for versioned routes",
      "url": "https://api.sumr.co/v3"
    },
    {
      "description": "Production Platform root discovery and OAuth routes",
      "url": "https://api.sumr.co"
    }
  ],
  "tags": [],
  "x-generatedBy": "Platform/system/gateways/api/src/scripts/extract-openapi.ts",
  "x-kontract-surface": "public"
}
